필요한 우분투와 ROS 버전 확인
설치 전, 리눅스 버전에 대해 설명드리겠습니다. ROS는 Debian, Windows 10 등 다양한 OS에서의 작동을 지원하지만 Ubuntu를 공식지원하며, Ubuntu 환경을 이용하는 유저가 절대다수입니다. 따라서 저희는 Ubuntu 환경에서 ROS를 설치하겠습니다. Ubuntu는 Native나 VM이나 큰 상관이 없습니다. 사용하시는 PC에 Ubuntu를 듀얼부팅으로 설치하기가 꺼려지신다면 VIrtualBox등을 이용해 설치하셔도 됩니다.
Ubuntu 버전에 따라 지원되는 ROS의 버전이 다릅니다. 아래의 표에 적힌 Ubuntu 버전과 ROS 버전이 일치하지 않는다면 정상적으로 작동하지 않을 수 있습니다.
Ubuntu Version | ROS Version |
Ubuntu 16.04 Xenial Xerus | ROS Kinetic |
Ubuntu 18.04 Bionic Beaver | ROS Melodic |
Ubuntu 20.04 Focal Fossa | ROS Noetic |
ROS 환경 세팅 1. ROS Melodic 설치 가. 우분투 레포지토리 구성 나. source.list 설정 다. keys 설정하기 라. 설치 마. 환경(환경변수) 설정 사. 패키지 빌드를 위한 의존성 아. rosdep 초기화 2. 필수 패키지 설치 가. rosbridge_suite 설치 나. roslibjs설치 다. rosserial 설치 |
ROS Melodic 설치에 관한 최신 사항은 이 곳에 잘 설명되어 있습니다. 아래의 과정이 잘 되지 않거나, 이 글이 너무 오래 전에 작성되었다면 여기를 통해 이상 없이 설치에 성공할 수 있길 바랍니다. 혹시라도 영어로 구성된 페이지가 부담스럽다면, 한국어 ROSWiki에서 ROS 설치에 대한 정보를 얻으실 수도 있습니다. 다만 영문 페이지가 업데이트가 가장 활발하다는 점은 알아둬야 합니다.
*ROS Melodic 설치에 대한 모든 사항은 ROSWiki 영문 페이지의 내용을 번역한 것이며,
아래 내용에 대한 모든 저작권은 ROSWiki에 있음을 밝힙니다.
1. ROS Melodic 설치
*21. 09. 24. 내용 수정 : 어떤 분께서 채널톡으로 안된다고 피드백 주셔서 수정했습니다. 여러분들께서도 진행하다 잘 안되면 오른쪽 아래의 채팅 버튼을 눌러 많은 분들이 도움을 받게 해 주시면 감사하겠습니다!
가. source.list 설정 : (210924 내용추가) package.ros.org로부터 소프트웨어를 받아들일 수 있도록 pc를 세팅합니다.
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
나. keys 설정하기 | (210924 내용추가)curl이 설치되어 있지 않다면 sudo apt install curl을 입력해 curl을 설치하시고, 이미 설치되어 있다면 아래 curl -s 이하의 명령어만 실행해서 packages.ros.org로부터 ros를 받아올 수 있도록 합니다.
sudo apt install curl # if you haven't already installed curl
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
라. 설치 :
먼저, Debian 패키지 목록을 최신화 합니다.
sudo apt update
ROS에는 많은 라이브러리와 도구가 있습니다. ROS는 처음 시작하는 데 있어 4가지의 기본 구성을 제공합니다. 또한, ROS 패키지를 개별로 설치할 수 있습니다.
Desktop-Full 설치(추천함) : ROS, rqt, rviz, robot-generic-libraries, 2D/3D 시뮬레이터와 2D/3D 인식기(perception)
sudo apt install ros-melodic-desktop-full
Desktop 설치(여기에선 이걸로 진행합니다.) : ROS, rqt, rviz와 robot 관련 일반적인 라이브러리들을 포함합니다.
sudo apt install ros-melodic-desktop
ROS-Base : (베어본)ROS 패키지, 빌드, 통신 라이브러리를 포함합니다. GUI 툴이 없습니다.
sudo apt install ros-melodic-ros-base
개별 패키지 설치 : 특정한 ROS 패키지를 설치할 수도 있습니다. (패키지 이름의 언더바(_)를 하이픈(-)으로 바꿉니다.)
sudo apt install ros-melodic-PACKAGE
예제 :
sudo apt install ros-melodic-slam-gmapping
시용 가능한 패키지를 찾고자 하는 경우, 다음의 명령어를 입력하세요:
apt search ros-melodic
마. 환경(환경변수) 설정
터미널을 새로 열 때마다 ROS 환경변수가 추가되어 있다면 편리합니다.(안해도 되지만 그럼 매번 "source~(생략)"내용을 입력해서 환경변수를 추가해야 합니다. )
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
여러 버전의 ROS가 동시에 설치된 경우, 현재 사용하고 있는 버전만을 ~/.bashrc에 추가해야합니다.
그냥 현재 쉘의 환경만을 바꾸고 싶은 경우(환경변수를 일회성으로 추가하고 싶은 경우), 위의 명령어 대신 다음을 입력할 수 있습니다.
source /opt/ros/melodic/setup.bash
기본 bash 쉥 대신 zsh를 사용 중이라면 shell을 설정하기 위해 다음의 명령어를 입력하세요.
echo "source /opt/ros/melodic/setup.zsh" >> ~/.zshrc
source ~/.zshrc
사. 패키지 빌드를 위한 의존성
지금까지 핵심이 되는 ROS 패키지를 실행시키기 위해 필요한 것들을 설치했습니다. 당신만의 ROS workspace를 만들고, 관리하기 위해, 다양한 도구와 필요한 것들이 따로따로 배포되어 있습니다. 예를 들어, rosinstall은 많은 수의 ROS 패키지를 하나의 명령어로 다운로드할 수 있게 하는 커맨드라인 도구입니다.
이 툴을 다운로드하고, ROS 패키지들을 빌드하기 위한 의존성을 위해, 다음의 명령어를 실행하세요.
sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential
아. rosdep 초기화
많은 ROS 도구를 사용하기 전에 rosdep을 초기화해야합니다. rosdep을 사용하면 컴파일하려는 소스에 대한 시스템 종속성을 쉽게 설치할 수 있으며 ROS에서 일부 핵심 구성 요소를 실행하는 데 필요합니다. 다음의 명령어를 통해 rosdep을 설치하세요.
sudo apt install python-rosdep
그 다음, rosdep을 초기화하세요.
sudo rosdep init
rosdep update
Done!
일단 여기까지 진행 후 터미널에 roscore를 입력했을 때 오류 없이 잘 작동된다면 설치는 성공적입니다.