-
mipsel32 개발 환경 구축문제해결 2021. 12. 9. 02:03
툴체인 구성
개발 컴퓨터의 CPU와 실행 환경의 CPU가 다를 때, 항상 문제 되는 부분이 빌드 환경의 구축이다. 크로스 컴파일을 위해선 컴파일러, 사용할 C런타임 라이브러리 등 신경 써야 할 것이 너무 많기 때문이다. x86 계열과 ARM 계열은 크로스 컴파일이 잦다 보니 쉽게 세팅할 수 있지만, mips는 그렇지 않았다. 그래도 몇 번 반복하다 보니 숙련도가 생겨서 프로세스를 적립할 수 있었다. mipsel32bit를 기준으로 다음과 같다.
- 툴체인을 구축하기 위해서 buildroot를 사용한다.
- 최대한 오래 지원해주는 Latest long term support release 버전으로 다운로드
- 압축 풀고, make menuconfig로 하나씩 구성한다.
- TargetOptions
- BuildOptions
- ToolChain
- make를 실행한다. 빌드 완료까지 수십 분 걸릴 수 있다.
- 툴체인 결과물은 buildroot/output/host 디렉토리 전체이다.
- buildroot/output/host/bin/~~~.gcc 혹은 g++을 이용하여 테스트 프로젝트를 빌드한다.
- 실행환경에서 실행한다.
- 실행이 실패하면 에러를 보고 다시 빌드를 하던 추가할 것을 찾아 헤맨다...
- 실행이 성공하면 도커로 다시 구축한다.(도커를 쓰는 이유)
- Dockerfile에 툴체인 폴더를 모두 copy하고, Makefile에서 쓰는 컴파일러 경로를 다시 설정해준다.
- 도커 위에서 빌드하고 개발을 진행한다.(윈도우에서 도커써서 개발하기)
- 끝
'문제해결' 카테고리의 다른 글
라라벨 프로젝트 진행중에 문제해결 (0) 2023.07.13 TOC 만들기 (0) 2023.02.09 VMWare기반 개발 환경을 호스트 OS로 옮겼다. (0) 2021.10.21 ESP32 write cycles의 중요성 (0) 2021.10.06 도커를 도입했다. (0) 2021.08.15