이 페이지 에서는 package 생성 및 구성, pub&sub node 생성 방법에 대해 다룹니다.
먼저 catkin_ws 라는 작업 공간을 생성해 줍니다.
$ mkdir -p catkin_ws/src
ko/ROS/Tutorials/catkin/CreatingPackage - ROS Wiki
워크스페이스의 src 디렉토리에서 catkin_create_pkg 라는 명령어를 이용하여 패키지를 생성합니다.
이때 원하는 패키지의 이름과 해당 패키지에서 필요로하는 의존성 라이브러리들을 정의해 줍니다.
(의존성 라이브러리는 CMakeList.txt 파일에서 수정할 수 있습니다.)
$ cd ~/catkin_ws/src
$ catkin_create_pkg [패키지명] [의존성1] [의존성2] [의존성3..]
예시) $ catkin_create_pkg test_pkg std_msgs rospy roscpp
다음은 ros catkin 패키지의 기본적인 구성입니다.
패키지를 생성하게 되면 다음과 같은 기본 구성을 갖추게 됩니다.
workspace_folder/ -- 작업공간
src/ -- 소스 폴더
CMakeLists.txt -- catkin이 제공하는 '최상위'의 CMake 파일,
package_1/
CMakeLists.txt -- package_1에 대한 CMakeLists.txt 파일
package.xml -- package_1에 대한 매니패스트
src/ -- package_1에 대한 소스코드가 담기는 폴더
...
package_n/
CMakeLists.txt -- package_n에 대한 CMakeLists.txt 파일
package.xml -- package_n에 대한 매니패스트
src/ -- package_n에 대한 소스코드가 담기는 폴더
패키지를 새로 생성하였기 때문에 빌드를 한번 해줍니다.
❗빌드는 워크스페이스의 최상단 디렉토리에서 진행해줘야 함에 유의합니다.