Carla 설치 (ROS bridge랑 버전 같아야 함)

2024. 1. 15. 02:28SDV(Software Defined Vehicle)/carla simulator

지금까지 Ureal Engine, carla, ROS bridge 까지 설치를 했다. 하지만 최종 단계에서 ROS bridge를 lauch 시킬 때 오류가 발생했다. 

 

주요한 파일 경로 :  /etc/apt/sources.list ---> sudo apt update 안되는 경우에 스크립트에서 해당부분 주석처리해주기.

 

 

원인은 carla과 ROS bridge 의 버전을 동일하게 맞추지 않았기 때문에 발생했다. 

 

우선 DRAM을 기존 16GB에서 40GB로 업그레이드 시켰다.(12만원정도 듦)

 

내가 설치한 carla 버전 : 0.9.15

내가 설치한 ROS bridge 버전 : 0.9.13

 

둘다 최신 버전으로 깔았는데 ROS Bridge 를 launch 하는 과정에서 에러가 발생했다. 

 

결론 적으로 carla 버전을 0.9.13으로 다운그레이드 하는것을 목표로 두었다. 

 

인터넷 서치를 통해 해결방안을 찾고 가장 간단한 방법으로 해결하고자 했으나 실패의 연속이였다. 

 

처음시도한 방법은 아래와 같으나 실패했다. 아마 소스코드의 일부만 교체하는 바람에 내가 수정해야하지 말아야 할 부분까지 소스코드 컴파일 에러가 떳다. 

 

때문에 다시 원론적인 방법을 통해 문제를 해결하고자 했다. 

 

https://carla.readthedocs.io/en/latest/build_linux/

 

Linux build - CARLA Simulator

Linux build This guide details how to build CARLA from source on Linux. There are two parts. Part one details system requirements and installations of required software, and part two details how to actually build and run CARLA. The build process is long (4

carla.readthedocs.io

위의 공식사이트에서 세부적인 버전을 다운받고 싶으면 아래의 과정을 따르라고 했다. 아래의 과정을 따르지 않았더니 최신버전인 0.9.15로 설치가 됐던 것이였다. 

 

 

 

 

자 이제 본격적으로 문제를 해결하고 제대로 다운받아보자.

 

1. git clone 을 해준다. (tag를 0.9.13으로 바꾸어서 git clone해도 어차피 master와 저장소 주소가 같게 찍히기 때문에 우선 git clone을 해준다.)

 

2. git clone 이 완료되면 해야 할 일이 몇가지 있다.

 

 

(0) 다음의 명령어를 통해 tag를 0.9.13으로 변경해준다. 이렇게하면 tag는 변경되지만 branch는  "detached HEAD" 상태가 된다. 문제 없으니 이대로 진행하면 된다. 

cd carla
git checkout 0.9.13

 

(1) 바로 위에 보이는 사진에서 38번째 라인에 있는 0.9.13버전에 맞는 asset 주소를 복사하여 url 에 검색하면 바로 다운로드가 된다. 다운 받은 asset 파일을 /path/to/carla/Unreal/CarlaUE4/Content/Carla 이경로에 압축 풀어서 놓아라. 많약에 Content 파일이 없으면 만들어서 넣으면 된다. 

 

(2) 이제 cd carla 명령을 한다음 make PythonAPI를 해줄텐데 분명 오류가 날 것이다. 

 

첫번째 : clang - 8을 설치해라 -> 이건 gpt한테 물어보면 sudo 어쩌구 하면서 간단하게 설치하게 된다. 그리고 다시 make PythonAPI

 

두번째 : 위의 과정을 해도 또 에러가 난다. 바로 xerces-c 404 error 3.2.3 관련 에러인데 아래 설명대로 해당 자료를 수정해주면 된다. 그다음에 다시 make PythonAPI 시도

 

Try changing line 432 of Util/BuildTools/Setup.sh to https://archive.apache.org/dist/xerces/c/3/sources/xerces-c-3.2.3.tar.gz

 

 

 

위의 참고 문헌은 다음과 같다.

 

https://github.com/carla-simulator/carla/discussions/5879

 

When I “make pythonAPI” ,there is something wrong with · carla-simulator/carla · Discussion #5879

When I download the carla and "make pythonAPI", There is no dist folder in PythonAPI/carla despite a successful output message. And I konw there something wrong when I make PythonAPI, I found the e...

github.com

 

 

세번째 : 만약 내가 처음에 하라는 대로 git clone을 안하고 zip파일로 다운받은 경우에도 에러가 난다. make PythonAPI 실행 중간에 git과 연결이 안돼있다고 뜰것이다 때문에 이러한 이유로 애초에 git clone으로 다운 받았어야 했다. 만약에 그러지 못했다면 다시 git clone 하고 첫번째 두번째 에러를 잡은다음에 make PythoAPI를 시도해라.

 

그러면 결국에는 성공하고, 이후 과정인 cd ~/carla && make launch 를 해주면 된다.