ROS

Ros 공부 1일차 - catkin, Catkin_ws 이외의 나만의 작업공간 생성

Upright_wing 2022. 2. 24. 23:28

1. Catkin

캣킨은 CMake와 밀접한 관련이 있는 부분이다. 미세한 부분을 터득하려면 CMake에 관해 조금 알아 두는 것이 좋다. 그러나 일상적으로 캣킨을 사용하는 사용자는 CMakelists.txt와 package.xml 두 파일에 관해서만 알면된다. 

 

2. 작업공간

우리는 보통 작업공간을 만들때, catkin_ws을 사용하는데, 또 다른 작업공간을 사용하고 싶을 수도 있다.

 

그러한 방법에 대해 알아보겠다. 

$ source /opt/ros/<ros version>/setup.bash

여기까지는 똑같다. 이 부분은 앞에서 해놓았을것이라고 생각하고 넘어가겠다.

 

이제 우리는 캣킨 작업공간외에 또다른 작업 공간을 만들고 초기화를 하려고 한다.

$ mkdir -p ~/RC_ws/src
$ cd ~/RC_ws/src
$ catkin_init_workspace

 

위와 같이 우리는 RC_ws를 만들었다. 그리고 catkin_init_workspace 명령을 통해 src 디렉토리 안에 CMakelists.txt파일을 생성했다. 그리고 추가로 catkin_make를 해주겠다.

$ cd ~/RC_ws
$ catkin_make

이제 우리는 RC_ws를 만들었다. 이제 마지막 작업만 남았다. 우리는 이제 devel이라는 환결설정 파일을 조금 만져줄것이다. 

$ source devel/setup.bash

이는 RC_ws안에서 입력을 해주면된다. 이것을 실행하면 시스템이 현재 작업 공간과 그 안에 포함된 코드를 사용하게 만들어준다.

단 주의할것이 있다. 이 부분은 우리가 터미널을 열면 무조건적으로 실행해 주어야 하는 것이다. 그렇기 때문에 이 부분이 귀찮다면 gedit을 사용하여 수정해 주어야한다. 

gedit ~/.bashrc

.bashrc 파일안에 내가 설정한 파일경로를 source 명령해주면 된다.

source ~/<본인의 워크스페이스 주소>/devel/setup.bash

 

 

※여기서 잠깐

기본적으로 우리가 워크스페이스 공간을 만들면 src, devel, bulid 디렉토리들이 만들어 질텐데, 이중 bulid는 C++을 사용하면 라이브러리와 실행프로그램과 같은 캣킨 작업 결과 중 일부를 저장하는 곳이며, devel은 다양한 파일과 디렉토리를 가지는데, 중요한 것은 환경설정 파일이다. 마지막으로 src디렉토리 안에는 다양한 패키지들이 존재하게 된다.