OS/ROS

[catkin] catkin init 과 catkin clean 의 차이점

쩡 (개발꿈나무) 2021. 8. 5. 15:22

항상 습관처럼 catkin clean을 하긴 했지만, init 명령어와 뭐가 다른지 항상 궁금했었어요.
둘 다 얼핏 듣기에는 그 역할이 비슷해보여서 어떤게 다른지 주변의 ROS 고수님께 질문을 했습니다.
듣고 제가 이해한 대로 정리한 내용이에요. 잘못된 표현이 있다면 댓글로 알려주세요 ^^

* 참고 : 기본적으로 catkin_make가 디폴드지만, 저는 catkin_tools를 씁니다.

 

catkin init = 초기 설정 진행

catkin init은 말 그대로 초기화해주는 것이라, 실행시에 .config 같은 뉘앙스의 설정 파일을 생성해준다고 합니다.

(그래서 실수로 다른 경로에서 init을 하게 될 경우, 일일이 그 파일을 찾아서 지워야함)

워크스페이스를 만들고 첫 빌드시에 수행해주는 명령입니다.

 

catkin clean = 상태 초기화 (원상 복구)

catkin clean은 build 정보를 초기화 해준다고 하네요.

빌드시에 변경되는 devel과 build 폴더를 초기화 하게 되는데,
원래 상태가 아무 것도 없는 상태이기 때문에 포맷된다고 생각하시면 됩니다 ㅎㅎ

빌드 대상이 되는 것을 건드렸을때, 재빌드 전 실행해주면 됩니다.

 

catkin build

기본 빌드 대상 : devel, build 폴더 안의 모든 것

사용 경우 : 새 패키지가 생겼을 때 / 기본 빌드 대상을 수정했을 때 / 빌드 언어로 만든 파일을 수정했을 때

* python이나 launch파일은 인터프리터 언어라 build가 필요없지만, C++ 언어 등은 변경시 빌드가 필요함

'OS > ROS' 카테고리의 다른 글

[ROS2] Ubuntu 20.04 install ROS2 Foxy  (0) 2021.04.23
[ROS] catkin build error  (0) 2021.04.15
[ROS] ROS 버전 확인  (0) 2021.03.03
[ROS1] camera 실행  (0) 2021.03.02
[ROS1] udev 설정  (0) 2021.02.17