리눅스환경에서 arm 기반 프로그램을 컴파일해서 올리자면, arm용 (arm9기반이니까) 컴파일러가 필요한데-
이 때 해야하는 작업이 크로스 컴파일이다.
크로스컴파일. 말은 그럴싸하니 멋있지만, 삽질의 장본인이다. (그앙!)
그럼 우선, 크로스컴파일을 해보자.
<< 크로스컴파일러 깔기 >>
1. 다운받는다.
어디서고 상관없지만, 나는 arm.linux.org.uk에서 받았다...
$ wget http://ftp.arm.linux.org.uk/pub/armlinux/toolchain/cross-3.2.tar.bz2
arm용으로 3.2버전을 받았다.
압축을 풀고, 원하는 곳으로 옮긴다.
압축을 풀면 나오는 arm이라는 폴더를 /usr/local/ 에 두었다. (그냥 내맘-_-)
2. 패스설정한다.
그리고 나서 .bash_profile을 고쳐주어야 한다. 그렇지 않으면 command를 찾지 못할 것이다.
.bash_profile은 ~/ 경로를 찾으면 있다.
다른 방법으로 cd 치고 엔터를 누르면 이동하는 경로이다.
보통 ls로는 보이지 않는 파일이고, 파일목록으로 보고 싶으면 ls -al을 하면 보인다.
vi를 이용해서 편집을 한다.
PATH 라고 되어 있는 부분을 찾는다.
보통은
PATH=$PATH:$HOME/bin 이라고 되있을 건데, 여기다가 크로스컴파일러 깐 곳의 path를 입력해준다.
PATH=/usr/local/arm/bin:$PATH:$HOME/bin
bin폴더 아래에 가보면 크로스 컴파일러가 가득한 것을 볼 수 있다.
크로스 컴파일러가 있는 경로를 넣어주면 되는 것이다.
마지막으로 바뀐 bash_profile을 적용시켜주어야 한다.
$ source .bash_profile
그리고 나서 확인을 해보려면, command를 입력해보면 된다.
arm-linux-gcc 라고 입력하고 엔터를 쳤을 때,
input file이 없다고 에러메세지가 뜨면 제대로 경로를 잡은 것이고,
그렇지 않고 없는 command라고 뜬다면 제대로 경로를 잡지 못한것이다.
좋은 정보 잘보았습니다. 참조해가도되죠?
답글삭제링크는 걸어놓을께요 ^^
@이원희 - 2009/06/06 00:47
답글삭제도움이 되었다니 기쁩니다.
유용하게 쓰시길 바라겠습니다. ^^