报错:
[rosbuild] Error from directory check: /opt/ros/melodic/share/ros/core/rosbuild/bin/check_same_directories.py /home/meng/ideas/auto_resolution_map/back_up/2D-planning

报错原因是:使用ros自己编译(build)的那套流程查找包目录“opt/ros/melodic/share/ros/core/rosbuild/bin/check_same_directories.py”,没有找到指定的包“home/meng/ideas/auto_resolution_map/back_up/2D-planning”
[rosbuild] Building package 2D-planning
[rosbuild] Error from directory check: /opt/ros/melodic/share/ros/core/rosbuild/bin/check_same_directories.py /home/meng/ideas/auto_resolution_map/back_up/2D-planning
1
Traceback (most recent call last):
File "/opt/ros/melodic/share/ros/core/rosbuild/bin/check_same_directories.py", line 46, in <module>
raise Exception
Exception
CMake Error at /opt/ros/melodic/share/ros/core/rosbuild/private.cmake:99 (message):
[rosbuild] rospack found package "2D-planning" at "", but the current
directory is "/home/meng/ideas/auto_resolution_map/back_up/2D-planning".
You should double-check your ROS_PACKAGE_PATH to ensure that packages are
found in the correct precedence order.
Call Stack (most recent call first):
/opt/ros/melodic/share/ros/core/rosbuild/public.cmake:177 (_rosbuild_check_package_location)
CMakeLists.txt:12 (rosbuild_init)
-- Configuring incomplete, errors occurred!
See also "/home/meng/ideas/auto_resolution_map/back_up/2D-planning/CMakeFiles/CMakeOutput.log".
解决办法:
将被编译的包的路径添加到~/.bashrc里面即可
sudo gedit ~/.bashrc
添加被编译包的路径(直接从报错中复制即可):
示例:
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:目录
我这里是:
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/meng/ideas/auto_resolution_map/back_up/2D-planning
然后:
source ~/.bashrc
重新编译即可
本文介绍了如何修复在ROS(Robot Operating System)编译过程中遇到的错误,重点在于解决由于包路径不匹配导致的'check_same_directories.py'找不到指定包的问题,通过编辑~/.bashrc并添加自定义包路径来确保编译成功。

1692

被折叠的 条评论
为什么被折叠?



