ROS1과 ROS2의 환경 변수 관리
ROS 환경 설정
Ubuntu에서 ROS1과 ROS2를 모두 사용하여 개발하는 경우가 많아 환경을 터미널에서 오가는 경우가 많아 각 터미널에서이 환경이로드되는지 알기 쉽게했을 때 설정 메모.
결국 이런 일을 할 수 있게 됩니다.
환경
본 기사에서는 이하에서 검증하고 있습니다.
Ubuntu18.04, melodic, eloquent 환경에서도 가능해야합니다.
환경을 로드하기 위한 alias 설정
~/.bashrc
또는 ~/.bash_aliases
등에 다음을 기재 PS1
를 하는 것으로 터미널상에서 어느 환경이 읽혀지고 있는지 알 수 있게 되어 있다. ## ROS ##
LOCAL_IP=`hostname -I | cut -d' ' -f1`
alias noetic='
source /opt/ros/noetic/setup.bash;
export ROS_WORKSPACE=${HOME}/catkin_ws;
export ROS_PACKAGE_PATH=${ROS_WORKSPACE}/:$ROS_PACKAGE_PATH;
export ROS_IP=${LOCAL_IP};
export ROS_MASTER_URI=http://localhost:11311;
source ${ROS_WORKSPACE}/devel/setup.bash;
export PS1="\e[1;32m\]\u@\h\e[1;31m\]<noetic>\e[m\]:\e[1;34m\]\w\e[m\]$ "
'
alias foxy='
source /opt/ros/foxy/setup.bash;
export ROS_WORKSPACE=${HOME}/ros2_ws;
source ${ROS_WORKSPACE}/install/local_setup.bash;
export ROS_LOCALHOST_ONLY=1;
export PS1="\e[1;32m\]\u@\h\e[1;33m\]<foxy>\e[m\]:\e[1;34m\]\w\e[m\]$ "
'
~/.zshrc
등에 기재하십시오. ## ROS ##
LOCAL_IP=`hostname -I | cut -d' ' -f1`
alias melodic='
source /opt/ros/noetic/setup.zsh;
export ROS_WORKSPACE=${HOME}/catkin_ws;
export ROS_PACKAGE_PATH=${ROS_WORKSPACE}/:$ROS_PACKAGE_PATH;
export ROS_IP=${LOCAL_IP};
export ROS_MASTER_URI=http://localhost:11311;
source ${ROS_WORKSPACE}/devel/setup.zsh;
export PS1="%F{red}<melodic> %f"$_LIBERTY" "
'
alias foxy='
source /opt/ros/foxy/setup.zsh;
export ROS_WORKSPACE=${HOME}/ros2_ws;
source ${ROS_WORKSPACE}/install/local_setup.zsh;
export ROS_LOCALHOST_ONLY=1;
export PS1="%F{blue}<eloquent> %f"$_LIBERTY" "
'
source ~/.bashrc
또는 source ~/.zshrc
변경하여 로드합니다. (다른 터미널 시작도 좋습니다.) noetic
를, ROS2를 사용하려면 foxy
를 실행하여 환경을 읽습니다. 각 workspace make
ros_make
다음을 추가하면 현재로드 된 환경의 작업 공간을 빌드합니다 function ros_make() {
dir=$PWD;
cd $ROS_WORKSPACE;
if [[ $ROS_DISTRO == "noetic" ]]; then
catkin_make --cmake-args -DCMAKE_BUILD_TYPE=Release;
. devel/setup.zsh;
elif [[ $ROS_DISTRO == "foxy" ]]; then
if [ $# -gt 0 ]; then
colcon build --packages-select $1 --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release;
else
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release;
fi;
. install/local_setup.zsh;
else
echo "set ros distribution";
fi
cd $dir;
}
참고·관련 사이트 등
Reference
이 문제에 관하여(ROS1과 ROS2의 환경 변수 관리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Jumpei-Arima/items/da21807e9716e059b375텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)