栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【ROS报错】“c++: error: $[catkin

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【ROS报错】“c++: error: $[catkin

项目场景

ROS编译的过程中,出现报错:“c++: error: $[catkin_LIBRARIES]: 没有那个文件或目录”错误


问题描述

编译的过程中,详细报错如下:

[ 50%] Building CXX object test_pkg/CMakeFiles/hello.dir/src/helloworld.cpp.o
[100%] Linking CXX executable /home/zzw/test_ws/devel/lib/test_pkg/hello
c++: error: $[catkin_LIBRARIES]: 没有那个文件或目录
make[2]: *** [test_pkg/CMakeFiles/hello.dir/build.make:84:/home/zzw/test_ws/devel/lib/test_pkg/hello] 错误 1
make[1]: *** [CMakeFiles/Makefile2:688:test_pkg/CMakeFiles/hello.dir/all] 错误 2
make: *** [Makefile:141:all] 错误 2
Invoking "make -j8 -l8" failed
mInStream.read(buffer);
		mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();
	}

原因分析:

Cmakelist.txt编译文件写错了。之前错误写成:

add_executable(节点名 src/文件名)
target_link_libraries(节点名  $[catkin_LIBRARIES])
解决方案:

cmakelist中给出的规则提示:

## Declare a C++ executable
## With catkin_make all packages are built within a single CMake context
## The recommended prefix ensures that target names across packages don't collide
# add_executable(${PROJECT_NAME}_node src/test_pkg_node.cpp)

## Specify libraries to link a library or executable target against
# target_link_libraries(${PROJECT_NAME}_node
#   ${catkin_LIBRARIES}
# )

修改为:

add_executable(节点名 src/文件名)
target_link_libraries(节点名  ${catkin_LIBRARIES})
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/861622.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号