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

汽车城网站建设方案百度直播推广

汽车城网站建设方案,百度直播推广,程序开发步骤,网站开发多久由于一不小心把交叉编译的系统根目录破坏了,所以一股脑将交叉编译系统根目录全删了重新安装,安装后,交叉编译发现ydlidar的ros包驱动出现了库无法链接的错误(刚刚还是好好的),但是又想不起来之前是怎么解决的了,所以还…

由于一不小心把交叉编译的系统根目录破坏了,所以一股脑将交叉编译系统根目录全删了重新安装,安装后,交叉编译发现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_sdk,pthread和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.yidumall.com/news/75239.html

相关文章:

  • 宿州建设银行网站网络媒体软文案例
  • 湛江做网站公司优化怎么做
  • 看课学校网站建设旅行网站排名前十名
  • 制作返利网站seo优化网站技术排名百度推广
  • wordpress情侣家园seo快速排名网站优化
  • 衡水做外贸网站建设我赢网提供的高水平网页设计师
  • 老板让做公司网站设计拉新app渠道
  • 网站需备案吗网络销售就是忽悠人
  • 电商平台规则中国十大seo公司
  • 做推广优化的网站有哪些线上营销方式6种
  • 重庆假山制作长沙市seo百度关键词
  • 石家庄网站建设报价无锡百度
  • 惠州网站建设方案托管游戏代理平台一天结一次
  • 做seo网站优化多少钱江苏网站推广公司
  • 网站开发工程师岗位概要天津关键词排名提升
  • 佛山网站建设在哪找进入百度app
  • 在线设计图片logo免费seo技巧分享
  • 优秀企业网站设计制作seo知识培训
  • 旅游网站策划书公司网站建设需要多少钱
  • WordPress标题换行显示seo排名优化软件有
  • 做业务有哪些好的网站谷歌外贸网站
  • 网站域名多少钱一年网站优化外包公司
  • 创建一个网站需要做哪些准备怎么打广告吸引客户
  • 傻瓜一键自助建站系统什么是指数基金
  • 公司建网站制作平台网络营销方案怎么写
  • 泉州网站建设 推广百度关键词怎么做排名
  • 怎么做刷qq会员网站2018在线域名解析ip地址
  • 俄文网站开发翻译最佳磁力吧ciliba磁力链
  • 企业网站建设 cms郑州本地seo顾问
  • 如何做网站标题优化设计三年级上册语文答案