※ 아래의 글은 인베인님의 글을 재분류하는 과정에서 카페매니저가 옮겼음을 알립니다.
emulator용 2.6.23 커널소스(goldfish) 소스 컴파일 및 적용하기
2.6.23 커널소스를 컴파일하려면 ARM용 크로스 컴파일러가 있어야만 한다. Kernel,gcc,glibc,bintuils을 이용하여
직접 만들어도 되지만 컴파일러 전문업체에서 제공하는 툴체인을 사용하는 것을 여기에서 설명하도록 한다. http://www.codesourcery.com/gnu_toolchains/arm/download.html 사이트에서 ARM EABI, IA32 GNU /Linux 옵션
(라디오박스)을 선택한후에 다운로드 받을수 있다.
- Target Platform: ARM EABI
- Host Platform: IA32 GNU/Linux
바이너리 툴체인을 리눅스PC에서 압축을 해제한후에 Auto Path를 설정하도록 한다.
|
fc6#> tar xvf ./arm-2007q3-51-arm-none-gnueabi-i686-pc-linux-gnu.tar
fc6#> export PATH=$PATH :<cross_compiler_install_path>/bin/ |
http://android.googlecode.com/files/linux-2.6.23-android-m3-rc20.tar.gz 에서 Anrdoi의 Emulator에 사용되는
커널소스를 다운로드후에 압축을 해제하면 ../tools/lib/images디렉토리에 1.2M 크기의 커널소스들이 위치한다.
아래의 방법대로 커널을 컴파일하여 emulator에 적용하면 된다.
<?xml:namespace prefix = o /><?xml:namespace prefix = o />
|
fc6#> tar xzf linux-2.6.23-android-m3-rc20.tar.gz
fc6#> cd kernel
fc6#> cp ./arch/arm/configs/goldfish_defconfig ./.config
fc6#> vi ./Makefile
à CROSS_COMPILE ?= <cross_compiler_install_path>/bin/arm-none-linux-gnueabi-
à LDFLAGS_BUILD_ID 를 주석처리.
fc6#> make menuconfig
fc6#> make zImage
fc6#> cp ./arch/arm/boot/zImage <android_sdk_install_path>/tools/lib/images/kernel-qemu
fc6#> <android_sdk_install_path>/tools/emulator –console –debug-kernel –kernel kernel-qemu
또는 <android_sdk_install_path>/tools/emulator –console –debug-kernel |