본문 바로가기

Robotics

macOS에 ROS2 설치 삽질(feat. M2 Air) - 1 (Docker X)

최근 인턴생활을 시작하였는데 회사에서 ROS2 개발을 하라고 씽크패드 노트북을 주었다.
연휴가 되니 회사 노트북에 접근을 못해 코드 빌드를 하고 싶은데 할 수가 없었다.
가지고 있던 맥북으로 ROS2 개발 셋업을 하면 맥북 하나로 작업을 할 수 있는 편리함이 생길 것이라 판단했다.

 

사실 ROS2 개발용으로 macOS는 적합하지 않은 운영체제인데,
ROS1에서는 굉장히 제한적인 방식으로 지원을 했었지만 ROS2에 들어와서는 공식적으로 지원을 하였다.
하지만 애플 실리콘은 또 다른 문제라는 것을 맞으면서 배워버렸다

그래도 뭔가 정리 안해놓으면 아쉬울 것 같아서...

 

설치하려는 ROS2 버전은 ROS 2 Humble Hawksbill (22.04)이다.
모든 기능이 되는 것을 원하는것도 아니지만 적어도 따로 만든 패키지가 빌드가 되는것을 기준으로 작업을 진행하였다.


1. 공식문서 따라하기

macOS (source) — ROS 2 Documentation: Humble documentation <- 공식문서

이건 source를 이건 source를 직접 빌드하는 것으로 보면 된다.

 

M2 칩에서는 ogre 관련 이슈가 생겼다.

building-ros2-on-macos-big-sur-m1 -> 여기에서 x86을 arm64로 바꿔주는것으로 해결했다고 하는데 나는 되지 않았다..

2. RoboStack

RoboStack <- 공식 github

Using Robostack for ROS2 <- Foxy버전 install 설명

 

패키지들을 conda와 mamba에 올려주는 프로젝트?인 것 같다
ROS1 noetic을 제일 잘 지원한다고 하고 ROS2 패키지들도 열심히 올리는중인것 같은데..

 

설치한 패키지들은 잘 실행되지만 직접 만들거나 다운받은 패키지들은 실행되지 않았다
error들을 살펴보니 brew cmake와 conda의 cmake에 문제가 있는 것으로 보였다.


이러나저러나 계속 안되는 것은 마찬가지이고, 계속 설치제거를 하게 되면 또 다른 고통이 찾아올 것이 확실하므로..
docker를 이용하는 것을 찾아보기로 하였다.