본문 바로가기

Embedded/ODROID-X2

[ODROID-X2] source download & compile

1. Python 과 git-core를 설치

$ sudo apt-get install python
$ sudo apt-get install git-core

2. gcc install & check version

$ sudo apt-get install gcc
$ gcc -v

3. toolchain download

SourceryG++ Lite2010q1-188 또는 gcc-arm-none-eabi-4.4.1-2010q1-188-linux32.tar.gz 을 다운받는다.

SourceryG++ Lite2010q1-188Exynos4210BeginnerRev10.pdf을 참고하여 설치합니다.

저는 gcc-arm-none-eabi-4.4.1-2010q1-188-linux32.tar.gz을 이용하도록 하겠습니다.

다운받은 파일의 압축을 풀고 특정 위치로 이동합니다.

그리고 PATH을 환경변수에 추가합니다.

$ vi ~/.bashrc

export CROSS_COMPILE=arm-none-eabi- export ARCH=arm PATH=$PATH:/home/appmarkers/g++_arm_none_eabi/bin

변경된 PATH를 적용합니다.

$ source ~/.bashrc

4. source downlaod

Hardkernel 서버(ODROID-X2 Android 4.1 Beta-1.8 )에서 kernel_4412.tar.gz,  android.tar.gz 소스를 다운 받으신 후 

컴파일 할 폴더에 압축 해제 합니다.

$ tar xfz android.tar.gz
$ tar xfz kernel_4412.tar.gz
$ tar xfz boot.tar.gz
$ tar xfz kernel_4412.tar.gz

참고로  u-boot 는 컴파일된 바이너리 파일을 사용하시면 됩니다. http://dn.odroid.com/Android_Beta_1.2/bsp/ 에서 컴파일된 boot.tar.gz 파일을 다운 받으신 후 압축 해제 하시고 사용하시면 됩니다.

5. U-Boot Compile

uboot 소스는 http://dn.odroid.com/Android_Beta_1.5/BSP/에서 다운받을 수 있습니다.


$ make distclean       --> This is only used to clean up files from the source code
$ make smdk4412_config

$ make

6. kernel build

kernel build시 sd 또는 emmc 용으로 별도 컴파일이 가능합니다.

아래 그림을 보시면 odroidx2_xxx_defconfig파일이 2개가 존재하는것이 확인이 가능합니다.

$ make odroidx2_android_sdmmc_defconfig $ make -j4

참고로 odroidx2_android_sdmmc_defconfig는 최조 한번만 실행하시면 됩니다.

컴파일이 완료가 되면 아래 그림처럼 zImage is ready라고 표시가 됩니다.

7. Android build

$ chmod u+x ./build_android.sh
$ ./build_android.sh odroidx2

많이 기다리셔야 합니다. 성능이 좋은 시스템이라면 컴파일 시간이 단축되겠죠.