1 분 소요

듀얼리눅스에 ROS2 Humble을 설치하려고 한다.

ROS2 험블의 설치를 진행하게 되었다.

아래 velog포스팅 링크와 유튜브 링크를 참고했다.

  1. velog링크

  2. Youtube링크

일단 캐시삭제부터!

위 velog링크대로 “Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 5572 “를 실행했을떄, 문제가 발생함.

Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 5572

그래서 캐시삭제를 진행하기 로 했다.

$sudo rm /var/lib/apt/lists/lock
$sudo rm /var/cache/apt/archives/lock
$sudo rm /var/lib/dpkg/lcok*

$sudo dpkg --configure -a
$sudo apt update

Ubuntu Universe Repository를 활성화하다!

이후 정상적으로 아래 명령어를 실행하였다.

sudo apt install software-properties-common

sudo add-apt-repository universe

sudo apt update && sudo apt install curl -y

sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

sudo apt update

sudo apt upgrade

근데 아래 마지막 명령어에서 막혀버렸다.

sudo apt install ros-humble-desktop

찾아보니 나의 버전 문제인거 같다. 나는 당연히 22.04버전을 설치한줄로만 알았는데 lsb_release -a명령어를 통해 버전을 체크해보니 20.04가 깔려있는 대참사가 발생한 것이었다ㄷㄷ.

그래서 아래와 같은 버전 업그레이트 조치를 취해주었다.

$do-release-upgrade -c

위 명령어를 통해 업그레이드 가능한 버전이 어디까지인지 확인하였다.

22.04라는 것을 확인하였다. 아래 명령어를 실행하여 업그레이드를 진행해주었다.

$sudo do-release-upgrade

아래는 업그레이드 되고 있는 cmd창 화면이다.

brave_Vox23RcQ6M

다시 humble설치로 돌아가자!

아래 명령어가 정상적으로 수행되었다.

sudo apt install ros-humble-desktop
sudo apt install ros-dev-tools

아래 명령어로 편집창을 열어주었다.

gedit ~/.bashrc

이후 파일 맨 아래쪽에 아래 내용을 넣어주었다.

source /opt/ros/humble/setup.bash

ROS2 설치를 확인해보았다.

ctrl+alt+t를 눌러 커맨드 창을 열고, 다음과 같이 ROS2 환경을 설정해주었다.

source /opt/ros/humble/setup.bash

아래와 같이 talker라는 노드를 실행한다. Honestly I don’t know…. but!! ros에서 로봇개발을 진행할때는 이 노드라는 개념과 토픽이라는 개념이 매우 중요하다고 한다.

ros2 run demo_nodes_cpp talker
  • If there is no Issue, 터미널에 “Publishing”이라고 뜰 것이다.

이제 또다른 터미널을 열고, 마찬가지로 ROS2환경설정을 해주었다.

source /opt/ros/humble/setup.bash

그리고! 아까 위에서 말하는 사람(Talker)을 실행했으니, 이제 듣는사람(Listener)을 담당하는 애플리케이션을 실행해주었다.

ros2 run demo_nodes_py listener
  • If there is no Issue, 터미널에 “I heard”이라고 뜰 것이다.

이를 통해 ros2의 정상적인 설치여부를 판단할 수 있었다.

한가지 작은 고찰을 적는다면, 이렇게 연과지어 생각해볼 수 있을 것이다.

우리가 도커를 설치하든 아니면 가장 쉬운 파이썬을 설치하든 간에, 결국 이게 제대로 설치가 되었는지 확인하기 위해서 뭘하는가?

바로 버전확인이다!

파이썬 3.9.12버전을 설치했다면, 해당 버전이 잘 설치되었는지 확인해보기 위해 우리는 python --version이라고 커멘드창에 쳐본다.

도커 25.0.3버전을 설치했다면, 해당 버전이 잘 설치되었는지 확인해보기 위해 우리는 docker --version이라고 커맨드창에 쳐본다.

이와 같이 우리는 잘 설치되었는지 확인해보기 위해 특정 프로세스를 진행하고 이 습관은 필수적인것 같다.

CUDA toolkit을 설치해주었다.

언어:

카테고리:

업데이트:

댓글남기기