当前位置: 首页 > news >正文

江门关键词排名优化网站关键词优化

江门关键词排名优化,网站关键词优化,搜索引擎seo推广,快速网站推广由于一不小心把交叉编译的系统根目录破坏了#xff0c;所以一股脑将交叉编译系统根目录全删了重新安装#xff0c;安装后#xff0c;交叉编译发现ydlidar的ros包驱动出现了库无法链接的错误(刚刚还是好好的)#xff0c;但是又想不起来之前是怎么解决的了#xff0c;所以还…由于一不小心把交叉编译的系统根目录破坏了所以一股脑将交叉编译系统根目录全删了重新安装安装后交叉编译发现ydlidar的ros包驱动出现了库无法链接的错误(刚刚还是好好的)但是又想不起来之前是怎么解决的了所以还是一步一步重新解决这个问题吧(以后碰见啥问题怎么解决还是记录一下吧因为过一段时间真会忘!!!) 编译错误来自ydlidar_ros_driver-master这个ros包错误如下 [ 93%] Linking CXX executable /home/lwh/code/rk3399_ws/devel/lib/ydlidar_ros_driver/ydlidar_ros_driver_node /usr/lib/gcc-cross/aarch64-linux-gnu/7/../../../../aarch64-linux-gnu/bin/ld: 当搜索用于 //usr/local/lib/libydlidar_sdk.a 时跳过不兼容的 -lydlidar_sdk /usr/lib/gcc-cross/aarch64-linux-gnu/7/../../../../aarch64-linux-gnu/bin/ld: 找不到 -lydlidar_sdk collect2: error: ld returned 1 exit status ydlidar_ros_driver-master/CMakeFiles/ydlidar_ros_driver_node.dir/build.make:115: recipe for target /home/lwh/code/rk3399_ws/devel/lib/ydlidar_ros_driver/ydlidar_ros_driver_node failed make[2]: *** [/home/lwh/code/rk3399_ws/devel/lib/ydlidar_ros_driver/ydlidar_ros_driver_node] Error 1 CMakeFiles/Makefile2:2210: recipe for target ydlidar_ros_driver-master/CMakeFiles/ydlidar_ros_driver_node.dir/all failed make[1]: *** [ydlidar_ros_driver-master/CMakeFiles/ydlidar_ros_driver_node.dir/all] Error 2 make[1]: *** 正在等待未完成的任务....可以看到链接器ld在在对目标文件链接时无法找到匹配的库-lydlidar_sdk ydlidar_sdk库是通过find_package()查找的CMakeLists.txt内容如下 find_package(ydlidar_sdk REQUIRED) ... add_executable(${PROJECT_NAME}_node src/ydlidar_ros_driver.cpp)#--------------------------------------------------------------------------------------- #link library directories target_link_directories(${PROJECT_NAME}_node PRIVATE${YDLIDAR_SDK_LIBRARY_DIRS} ) target_link_libraries(${PROJECT_NAME}_node${catkin_LIBRARIES}${YDLIDAR_SDK_LIBRARIES}-pthread)其中target_link_directories()作用是设置链接器链接目标target时查找库的路径通过message()打印YDLIDAR_SDK_LIBRARY_DIRS发现这个变量为空那么这样的话只要将YDLIDAR_SDK_LIBRARY_DIRS设置为正确的库路径那么应该就能解决这个问题。 接着打开find_package()所查找并执行的cmake配置文件ydlidar_sdkConfig.cmake可以看到如下内容 SET( YDLIDAR_SDK_LIBRARIES ydlidar_sdk;pthread;rt CACHE INTERNAL YDLIDAR_SDK libraries FORCE ) SET( YDLIDAR_SDK_INCLUDE_DIRS /usr/local/include/src;/usr/local/include CACHE INTERNAL YDLIDAR_SDK include directories FORCE ) SET( YDLIDAR_SDK_LIBRARY_DIRS CACHE INTERNAL YDLIDAR_SDK library directories FORCE )mark_as_advanced( YDLIDAR_SDK_LIBRARIES ) mark_as_advanced( YDLIDAR_SDK_LIBRARY_DIRS ) mark_as_advanced( YDLIDAR_SDK_INCLUDE_DIRS )可以看到缓存变量YDLIDAR_SDK_LIBRARIES设置为了ydlidar_sdk;pthread;rt这意味着target_link_libraries()将会根据这个变量链接 名称为ydlidar_sdkpthread和rt的库注意这个名称不是库文件名而是库的标识名是在add_library()中设置的对于静态库标识名为ydlidar_sdk的库实际的库文件名为libydlidar_sdk.a, 对于共享库为libydlidar_sdk.so。 而YDLIDAR_SDK_INCLUDE_DIRS的路径是原X86系统的路径这显然是不正确的应该要改为交叉编译的系统根目录路径。 另外YDLIDAR_SDK_LIBRARY_DIRS库的链接路径这里直接设置为了空这里也要修改。 最后修改后的内容如下 SET( YDLIDAR_SDK_LIBRARIES ydlidar_sdk;pthread;rt CACHE INTERNAL YDLIDAR_SDK libraries FORCE ) SET( YDLIDAR_SDK_INCLUDE_DIRS /交叉编译系统根目录/usr/local/include/src;/交叉编译系统根目录/usr/local/include CACHE INTERNAL YDLIDAR_SDK include directories FORCE ) SET( YDLIDAR_SDK_LIBRARY_DIRS /交叉编译系统根目录/usr/local/lib CACHE INTERNAL YDLIDAR_SDK library directories FORCE )mark_as_advanced( YDLIDAR_SDK_LIBRARIES ) mark_as_advanced( YDLIDAR_SDK_LIBRARY_DIRS ) mark_as_advanced( YDLIDAR_SDK_INCLUDE_DIRS )修改后保存再执行交叉编译编译通过。
http://www.hkea.cn/news/14488571/

相关文章:

  • 程序员自己做网站怎么赚钱延吉网站制作
  • 做网站开封四川重大新闻事件
  • 四川营销型网站建设重庆室内设计学校
  • seo优化网站建设哪家好上海公司注册地址可以是住宅吗
  • 重庆产品推广类网站广州学校网站建设
  • 学校微网站模板如何注册一家公司方法步骤
  • 凡科怎么做网站云南网站建设找三好科技
  • 网站授权系统怎么用个人网站设计论文怎么写
  • 洛阳制作网站哪家好家装公司名称取名参考
  • linux网站建设网站建设管理工作总结报告
  • 制作七星网站做网站和推广找哪家好
  • 安徽网站建设首选-晨飞网络沧州企业网站
  • 烟台58同城网站建设常用的网站推广
  • 案列网站seo的推广技巧
  • 做编程网站有哪些内容网站程序更换
  • 用织梦系统怎么做网站wordpress分享朋友圈
  • 网站开发托管协议手机网站建设沈阳
  • 汉口专业网站推广公司物流信息平台网站建设
  • 小网站推荐深圳建设监理协会网站
  • 众鱼深圳网站建设长沙有哪些软件公司
  • 多用户建站平台国外创意网站
  • 西宁做网站_君博相约姑苏区最新通告
  • 怎么联网访问自己做的网站百度百科创建
  • 大良网站制作公司深圳平面广告设计公司
  • dede 网站改宽屏代码黄骅港属于哪个市
  • 南京网站开发南京乐识正规阿升网站免费学设计
  • 动画形式的h5在哪个网站做自适应网页设计规范
  • saas建站工具高校网站建设需求单
  • 江西天亿建设有限公司网站做网站公司介绍ppt
  • 山东建设厅造价员网站抖音代运营合同注意事项