永久设置source的方法: 添加环境setup.bash到bashrc
方法1:
# 打开文件
gedit ~/.bashrc
# 手动修改!加上source ~/catkin_ws_txt/devel/setup.bash并保存
# 使配置生效
source ~/.bashrc
在bashrc尾端加上source ~/catkin_ws_txt/devel/setup.bash,保存。
再命令source ~/.bashrc使之生效。catkin_make编译。
方法2:
完成将source加入bashrc的过程,再生效。catkin_make编译。
# 在bashrc中加上source ~/catkin_ws_txt/devel/setup.bash
echo "source ~/catkin_ws/devel/setup.sh" >> ~/.bashrc
# 使配置生效
source ~/.bashrc
注意:切记要source后编译,否则还是找不到环境变量。
在建立多个工作空间时,常遇到工作空间覆盖的问题。
- 工作空间覆盖
简单说就是多个工作空间中有重名的功能包package和重名的程序名。ROS在运行时会根据ROS_PACKAGE_PATH路径中工作空间的新旧顺序从新到旧依次查找要运行的功能包,先找到的功能包就作为运行的功能包。
查看环境变量
ROS_PACKAGE_PATH可在终端输入命令查看:
echo $ROS_PACKAGE_PATH
查看ros相关的所有路径:
env|grep ros