ubuntu调试CAN通讯

_M_T 2019-04-13 08:07:39
在ubuntu里调试CAN,用的pcan-pci卡,撞了驱动后,示例程序能跑通。现在想直接把示例程序移植到ROS下。自己写了个cmakeList文件。编译之后报这些错误。但是程序里已经包含rtdm.h头文件了。请问为什么还报这个错,怎么解决?几天了。不知道怎么办。



[ 87%] Linking CXX executable /home/mt/catkin_ws/devel/lib/can/transmittest
/home/mt/catkin_ws/devel/lib/liblibpcan.so:对‘rt_dev_ioctl’未定义的引用
/home/mt/catkin_ws/devel/lib/liblibpcan.so:对‘rt_dev_open’未定义的引用
/home/mt/catkin_ws/devel/lib/liblibpcan.so:对‘rt_dev_close’未定义的引用
collect2: error: ld returned 1 exit status
can/CMakeFiles/transmittest.dir/build.make:116: recipe for target '/home/mt/catkin_ws/devel/lib/can/transmittest' failed
make[2]: *** [/home/mt/catkin_ws/devel/lib/can/transmittest] Error 1
CMakeFiles/Makefile2:467: recipe for target 'can/CMakeFiles/transmittest.dir/all' failed
make[1]: *** [can/CMakeFiles/transmittest.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j4 -l4" failed
...全文
2745 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
不羁自由 2020-12-14
  • 打赏
  • 举报
回复
楼主,问题解决了吗?我也要在ros下调用 can口,也是USB,目前一脸懵逼
天骄普雷 2019-06-29
  • 打赏
  • 举报
回复
应该是Cmakelists.txt文件里没有链接相应的动态库
target_link_libraries(${PROJECT_NAME}_node
   ${catkin_LIBRARIES}
   ntcan  //这里改成需要链接的.so库(你应该是pcan)
 )

1,318

社区成员

发帖
与我相关
我的任务
社区描述
主要是开发驱动技术
社区管理员
  • 驱动程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧