반응형
OS Melodic과 C++를 기준으로 ROS 패키지의 생성 및 삭제와 패키지 종속성 관리에 대해 알아보겠습니다.
패키지 생성 및 삭제
1. 패키지 생성
작업 공간에서 새로운 패키지를 생성하려면 catkin_create_pkg 명령어를 사용합니다. 이 예시에서는 my_package라는 이름의 패키지를 생성하고, std_msgs, rospy, roscpp를 종속 패키지로 설정합니다.
$ cd ~/my_workspace/src
$ catkin_create_pkg my_package std_msgs rospy roscpp
이제 작업 공간에 my_package라는 새로운 패키지가 생성되었습니다. 패키지 내에서 노드, 라이브러리 등을 개발할 수 있습니다.
2. 패키지 삭제
패키지를 삭제하려면 작업 공간의 src 디렉터리에서 패키지 디렉터리를 삭제하면 됩니다.
$ cd ~/my_workspace/src
$ rm -rf my_package
패키지를 삭제한 후, 작업 공간을 다시 빌드하여 변경 사항을 적용합니다.
$ cd ~/my_workspace
$ catkin_make
패키지 종속성 관리
패키지의 종속성은 package.xml 파일에서 관리됩니다. 종속 패키지를 추가하거나 삭제하려면 이 파일을 수정해야 합니다.
1. 종속성 추가
예를 들어, my_package에 tf 패키지를 종속 패키지로 추가하려면 package.xml 파일에서 다음과 같이 변경합니다.
<package format="2">
...
<build_depend>tf</build_depend>
<exec_depend>tf</exec_depend>
...
</package>
<build_depend> 태그는 빌드 시 필요한 종속성을, <exec_depend> 태그는 실행 시 필요한 종속성을 나타냅니다.
2. 종속성 삭제
종속성을 삭제하려면 해당 종속성을 나타내는 <build_depend> 및 <exec_depend> 태그를 package.xml 파일에서 제거합니다.
3. 종속성 설치
패키지의 종속성을 설치하려면 rosdep 명령어를 사용합니다. 이렇게 하면 패키지에 필요한 종속 패키지를 자동으로 설치할 수 있습니다.
$ cd ~/my_workspace
$ rosdep install --from-paths src --ignore-src -r -y
반응형
'자율주행' 카테고리의 다른 글
ROS 노드(node)와 토픽(topic) 소개 및 생성 (0) | 2023.05.02 |
---|---|
ROS 패키지 및 작업 공간 (0) | 2023.05.02 |
ROS(Robot Operating System) 프로그래밍 (0) | 2023.04.09 |
ROS(Robot Operating System) 총정리 (0) | 2023.04.07 |
ROS Demo: Hello World Example (0) | 2023.04.04 |
댓글