본문 바로가기

Robot/Robot Program - ROS

Ubuntu 20.04에서 ROS1 Noetic과 ROS2 Foxy 같이 설치하기

언제나 그렇듯 저는 Ubuntu 20.04 Focal (실제 저는 Mint 20.1 Ulyssa에서지만)에서 ROS1 Noetic 버전과 ROS2 Melodic 버전을 설치하는 과정을 이야기 해보려고 합니다. 물론 이런 글이 없어도 되는 분들도 있지만, 저는 여러 이유에서 이런 글을 올리는 것을 좋아합니다. 일종의 설치기~라고 생각해주세요^^ 요즘 제 컨셉인데 이 글도 동영상으로 그 과정을 보여드리고 있습니다.

Ubuntu 20.04 Focal과 Mint 20.1 Ulyssa는 몇몇 이슈를 빼면 동일하다고 생각하시면 됩니다.

일단 구글에서 ROS1 Noetic 설치 페이지를 찾습니다.

매우 쉽게 찾아질겁니다. 저는 항상 설치할때는 공식 설치 안내페이지에서 합니다. 뭐 그게 혹시 모를 여러 변경 사항들을 가장 빠르게 안내받을 방법이겠지요.

위의 페이지까지 진입하시면 됩니다.

먼저할 일은 sources.list의 내용을 긁어서 터미널에 넣어주면 됩니다. 우분투 유저는 그냥 저 코드를 그대로 붙여넣으면 되는데,

민트 유저는 $(lsb_release -sc) 부분을 강제로 focal로 변경해야 합니다.

위에 보이는 부분을

focal로 바꾸면 됩니다.

그리고 setup keys 부분을 실행합니다.

sudo apt update를 수행하고

ros-melodic-noetid-desktop-full을 설치해줍니다.

그리고 nano로 ~/.bashrc를 엽니다.

제일 마지막으로 내려가서

설치 페이지에 있는 저 부분을 긁어서 복사한 후에

alias 명령으로 noetic을 만들고 붙여넣습니다. 뒤에 echo 명령으로 안내 멘트를 하나 찍어 주구요^^

터미널을 끄고 다시 실행하던지 source 명령으로 bashrc를 다시 읽으면 됩니다.

그리고 noetic이라고 명령을 주면 방금 작성한 대로 실행되게 됩니다.

이제 ros1 noetic에서 사용할 빌드관련 디펜던시들을 설치합니다.

그리고 rosdep을 설치합니다.

그리고 rosdep init을 수행하고 

rosdep update까지 수행합니다.

이제 제가 좋아하는 catkin tools를 설치합니다.

일단 python3-osrf-python을 먼저 설치하고 

이후 python3-catkin-tools를 설치하면 됩니다.

이제 워크스페이스(catkin_ws)와 그 안에 src 폴더를 만듭니다.

거기서 catkin init을 수행하고 

catkin build를 수행합니다.

그리고 워크스페이스를 보면 build devel logs 폴더가 생성된것을 알 수 있습니다.

거기서 devel 폴더의 setup.bash의 경로를 확인한후에...

경로를 카피해두고~

nano로 bashrc에 들어가서

아까 만들어둔 noetic이라는 alias에 추가해 둡니다.

이제 noetic이라고 호출하면 바이너리 설치 경로와 소스 빌드 경로 모두 읽어들이게 됩니다. 이제 터미널을 껐다가 다시 키고.... ROS2를 설치하도록 하겠습니다.

역시 ROS2 Foxy의 설치 가이드 문서를 찾아서,

그리고 바이너리 설치 안내페이지를 찾습니다.

이제 시작합니다.~

먼저 locale 설정을 하고~

sources part를 따라합니다.

여기까지 하고난 후에~

이 코드를 실행할때 우분투 유저는 그냥 실행하시며 되구요

저처럼 Mint 유저는 방금 Noetic에서 한것처럼 $(lsb_release -sc )부분을 focal이라고 바꿉니다.

apt update를 수행하고 

ros-foxy-desktop을 설치합니다.

그리고 noetic이라는 alias를 만든것처럼 foxy라는 alias를 만들어 둡니다.

python3-pip를 설치하고 

업그레이드도 해줍니다.

자동완성관련된 argcomplete도 함께 설치해줍니다.^^

반응형