这是什么意思//usr/local/lib/libipopt.so.1:对‘mc68_order’未定义的引用 //usr/local/lib/libipopt.so.1:对‘mc68_default_control’未定义的引用 collect2: error: ld returned 1 exit status make[2]: *** [/home/lsx/quad_ws/devel/.private/local_planner/lib/local_planner/local_planner_node] Error 1 make[1]: *** [CMakeFiles/local_planner_node.dir/all] Error 2 make: *** [all] Error 2 cd /home/lsx/quad_ws/build/local_planner; catkin build --get-env local_planner | catkin env -si /usr/bin/make --jobserver-fds=3,4 -j; cd -
时间: 2023-08-28 14:03:42 浏览: 135
这是一个编译错误的输出,可能是由于缺少某些库或者依赖问题导致的。具体错误是链接器在链接编译后的二进制文件时找不到对应的符号(mc68_order和mc68_default_control)。建议检查一下代码中是否引用了这两个符号,并且检查是否缺少相关库或者依赖。如果需要更详细的帮助,请提供更多的信息,例如编译的操作系统和编译的过程。
相关问题
编译报错该怎么办//usr/local/lib/libipopt.so.1:对‘mc68_order’未定义的引用 //usr/local/lib/libipopt.so.1:对‘mc68_default_control’未定义的引用 collect2: error: ld returned 1 exit status
这个错误提示是链接器在链接编译后的二进制文件时找不到对应的符号(mc68_order和mc68_default_control)。一般来说,这种错误是由于缺少某些库或者依赖问题导致的。
以下是一些可能的解决方案:
1. 检查代码中是否引用了这两个符号,如果是,请确保相关的库已经正确安装,并且在链接时已经包含了这些库。
2. 检查你的Makefile或者CMakeLists.txt文件,确保正确地链接了所有必要的库和依赖项。可以使用ldd命令检查二进制文件的依赖关系。
3. 如果你在编译时使用了某些特定的选项,例如-fPIC,-shared等,请确保这些选项与库的编译选项一致,否则可能会导致链接错误。
4. 如果你使用的是第三方库,请确保它是最新版本,并且安装正确。如果有必要,请重新编译和安装该库。
如果以上方法都无法解决问题,可以提供更多的信息,例如编译的操作系统和编译的过程,以便更好地帮助你解决问题。
阅读全文