darknet_ros가 foxy 버전을 지원하기 시작했다.

https://github.com/leggedrobotics/darknet_ros

 

GitHub - leggedrobotics/darknet_ros: YOLO ROS: Real-Time Object Detection for ROS

YOLO ROS: Real-Time Object Detection for ROS. Contribute to leggedrobotics/darknet_ros development by creating an account on GitHub.

github.com

 

빌드하려고 보니 ubuntu 20.04에 기본 설치된 cmake 버전이 이전 버전이라 설치가 안된다.

$ cmake ..
CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
  CMake 3.18 or higher is required.  You are running version 3.16.3


-- Configuring incomplete, errors occurred!

현재 3.16.3 버전이 설치되어있다.

$ cmake --version
cmake version 3.16.3

apt upgrade 만으로는 업그레이드가 되지 않는다

그렇다고 새 버전을 설치하기 위해 apt install remove cmake를 하면 다른 ROS 패키지들도 같이 삭제가 된다.

$ sudo apt purge cmake
[sudo] password for khyou: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  cmake-data fonts-lato gazebo11 gazebo11-common gazebo11-plugin-base
  graphicsmagick-libmagick-dev-compat ignition-tools libamd2 libasound2-dev
  여러가지 lib 패키지 등등등...
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  cmake* libgazebo11-dev* libignition-cmake2-dev* libignition-common3-av-dev*
  libignition-common3-core-dev* libignition-common3-dev*
  ros-foxy-action-tutorials-cpp* ros-foxy-action-tutorials-interfaces*
  ros-foxy-action-tutorials-py* ros-foxy-actionlib-msgs* ros-foxy-ament-cmake*
  **등등등
  ros-foxy-*
  ros-foxy-visualization-msgs*
0 upgraded, 0 newly installed, 283 to remove and 21 not upgraded.
After this operation, 497 MB disk space will be freed.
Do you want to continue? [Y/n] n

그래서 검색해본 결과 아래와 같은 해결책이 있다.

https://answers.ros.org/question/293119/how-can-i-updateremove-cmake-without-partially-deleting-my-ros-distribution/

 

How can I update/remove cmake without partially deleting my ROS distribution? - ROS Answers: Open Source Q&A Forum

How can I update/remove cmake without partially deleting my ROS distribution? edit Problem (TL;DR) I need to update my cmake from version 2.8.12.2 to version 3.1 or higher. However this requires removing the previous version with the command: sudo apt remo

answers.ros.org

 

먼저 https://cmake.org/download/ 로 이동하여 cmake 최신 버전을 다운로드한다.

다운받은 cmake-3.xx.tar.gz 파일을 압축해재하고 해당 디렉토리로 이동하여 다음과 같이 빌드 인스톨 한다.

./bootstrap의 파라미터에 따라 사용자 디렉토리의 cmake-install 디렉토리에 설치를 한다.

$ cd ~/Downloads/cmake-3.xxxx/   # or wherever you downloaded cmake
$ ./bootstrap --prefix=$HOME/cmake-install
$ make 
$ make install

make와 make install이 완료되면 아래 항목을 .bashrc에 추가해준다.

export PATH=$HOME/cmake-install/bin:$PATH
export CMAKE_PREFIX_PATH=$HOME/cmake-install:$CMAKE_PREFIX_PATH

그리고나서 source ~/.bashrc 명령으로 터미널을 업데이트한다.

이제 cmake 버전이 새로 업그레이드 되었다.

$ cmake --version
cmake version 3.23.2

 

+ Recent posts