Cross Compiler 설치
Toolchain 이란? Embedded System을 개발하기 위해서는 Host System이란 개발 환경이 필요하다. 이 개발 환경이 필요한 이유는 Embedded System의 특성상 큰 용량의 저장 장치를 가지지 못하기 때문이다. Toolchain은 이런 개발에 필요한 모든 환경을 통칭하여 말한다. Nintendo DS는 ARM CPU를 사용하기 때문에, 일반 desktop의 x86계열과는 다른 compiler(ARM cross compiler)를 사용하게 된다.
Toolchain 사용할 compiler는 아래와 같이 GNU Tool을 사용한다. GNU gcc compilers for C, C++ GNU binutil GNU C Library GNU C header
Toolchain GNU Tool은 일반 GNU Tool과는(x86계열) 다른 Compiler (ARM cross compiler)를 사용하기 때문에 compile을 하게 되면 ARM에서 실행 가능한 바이너리가 생성된다. Host system X-Hyper270TKU Cross compiler를 이용하여 Host PC에서 바이너리(bootloader, kernel, application)를 생성한 후 Download한다. Serial, Ethernet
toolchain 설치 Toolchain download
커널 소스 다운로드중 화면
커널 소스와 툴체인의 압축 해제
toolchain 설치 PATH 설정 PATH 설정을 위해 $HOME/.bashrc 파일을 열다. vi ~/.bashrc PATH=$PATH:$HOME/dslinux-toolchain-2008-01-24-i686/bin “source” 명령어를 실행하여, PATH를 적용시킨다. # source ~/.bashrc 이제 arm-linux- 로 시작되는 Toolchain을 어느 디렉토리에서든 사용할 수 있다. (arm-까지 입력하고 tap을 쳐서 arm-linux로 시작하는 여러 명령어 확인 가능)
toolchain 설치 Test 하기 X86 계열에서 사용하는 리눅스의 gcc와 다른 점은 생성되는 코드가 ARM용으로 생성이 된다. hello.c 파일을 작성한다. # vi hello.c #include <stdio.h> int main (void) { printf(“hello world.\n”); return 0; }
toolchain test 컴파일 # gcc –o hello hello.c # arm-linux-elf-gcc –o hello_arm hello.c 실행 두 실행파일을 실행해보고, file 명령어로 파일의 성격 을 알아본다.