ROS Noetic 설치

mseokq23·2025년 1월 13일
0

Ubuntu on WSL

목록 보기
3/11

1. WSL2 및 Ubuntu 20.04 설치

  1. WSL(Windows Subsystem for Linux) 기능 활성화
  • Windows 검색창에서 “Windows 기능 켜기/끄기”를 검색하고 실행
  • “Windows 하위 시스템용 Linux”에 체크 후 확인 누른 뒤 재부팅
  1. WSL2 업데이트 및 기본 설정
  • Microsoft 공식 문서 를 참고하여, WSL2용 Linux 커널을 설치 혹은 업데이트
  • PowerShell(관리자 권한)에서 다음 명령어 실행하여 WSL의 기본 버전을 WSL2로 설정
wsl --set-default-version 2
  1. Microsoft 스토어에서 Ubuntu 20.04 설치
  • 스토어 앱 실행 → “Ubuntu 20.04 LTS” 검색 후 설치
  • 설치 완료 후 실행하면 초기 사용자 이름, 비밀번호 등을 설정

2. 패키지 업데이트 및 필수 도구 설치

# 시스템 패키지 목록 업데이트
sudo apt update

# 패키지 업그레이드(권장)
sudo apt upgrade -y

# curl 설치(ROS key 추가 시 필요)
sudo apt install curl -y

3. ROS Noetic 저장소 추가 및 키(key) 등록

  1. ROS 패키지용 GPG 키 추가
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
  1. ROS Noetic 소스 리스트 추가
# focal은 Ubuntu 20.04의 코드명
echo "deb http://packages.ros.org/ros/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/ros-noetic.list
  1. 패키지 목록 업데이트
sudo apt update

4. ROS Noetic 설치

  1. 전체 패키지(Desktop Full) 설치
    ROS의 모든 기능(시뮬레이션, RViz, rqt 등)을 사용하고 싶다면 아래 명령어로 설치.
sudo apt install ros-noetic-desktop-full -y
  1. ROS 환경 설정
    ROS를 매번 사용할 때마다 환경 변수를 설정해 주어야 합니다. 이를 자동으로 실행하기 위해 ~/.bashrc 파일에 추가
# rosdep 초기화 및 업데이트

sudo apt install python3-rosdep
sudo rosdep init
rosdep update

# ROS 환경 변수 설정
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
  1. 빌드 관련 도구 설치
    ROS 패키지 빌드 시 필요한 도구를 설치
sudo apt install python3-rosinstall python3-rosinstall-generator python3-wstool build-essential -y

5. GUI 프로그램 사용(X11 Forwarding 등)

WSL2에서 RViz, rqt 등 GUI 관련 기능을 사용하려면 X 서버를 윈도우 측에 설치 후 연결.
다양한 방법이 있으나 대표적으로 다음을 사용가능.

  • VcXsrv, Xming 등 X 서버 설치(Windows)
  • WSL2 Ubuntu 20.04 터미널에서 export DISPLAY 설정
  • VcXsrv + GWSL 등 서드파티 툴 이용

아래와 같이 설정할 수 있음(예: VcXsrv 사용 시):

  1. Windows에 VcXsrv 설치 후 실행(네트워크 액세스 public/private 허용)

VcXsrv 설치링크

Multiple windows를 선택하고 Display number에 0을 입력.

Start no client로 놓고 넘어감.

Additional parameters for Vcsrv에 '-ac'를 입력.

Save configuration을 누름.

shell:startup을 입력하고 해당 디렉터리로 이동한 후 저장

마침을 눌러 설정

  1. Ubuntu 내에서 설정(권장)
    우분투 키고 아래 명령어 입력하여 bashrc 열기
sudo nano ~/.bashrc

bashrc의 맨 아래줄에 아래 명령어 추가

export DISPLAY="`grep nameserver /etc/resolv.conf | sed 's/nameserver //'`:0"  # 혹시 몰라서 이것도 bashrc에 집어넣기
export LIBGL_ALWAYS_INDIRECT=1  # 이것도

bashrc를 다시 불러와서 적용하기

source ~/.bashrc

참고자료

  1. Ubuntu에서 환경 변수 설정(혹시몰라서 추가)
echo "export DISPLAY=$(ip route | grep default | awk '{print $3}'):0.0" >> ~/.bashrc
echo "export LIBGL_ALWAYS_INDIRECT=1" >> ~/.bashrc

source ~/.bashrc

6. 설치확인

# ROS 버전 정보 확인
rosversion -d
# 또는 
roscore

roscore가 제대로 실행되면 설치가 정상적으로 이루어졌음을 의미.

노트북 재시작하고 우분투 키고 아래 명령어로 GUI 실행되는지 테스트

rqt

7. 우분투 종료

파워쉘에서 아래 명령어 입력

wsl --list --running
PS C:\WINDOWS\system32> wsl --list --running
Linux용 Windows 하위 시스템 배포:
Ubuntu(기본값)
docker-desktop
docker-desktop-data

위와 같이 나옴

wsl --terminate Ubuntu

아래 명령어 입력하면 꺼짐.

0개의 댓글