CD에서 제공해 주시는 크로스 컴파일러를 다음과 같이 설치하고
# mkdir /usr/local/arm
# mv 4.3.1-eabi-armv6.tar.bz2 /usr/local/arm
# cd /usr/local/arm
# tar jxvf
4.3.1-eabi-armv6.tar.bz2
# export PATH=$PATH:/usr/local/arm/4.3.1-eabi-armv6/usr/bin
# source ~/.bashrc : 환경적용
다음과 같이 버전을 확인했습니다.
# arm-linux-gcc -v
Using built-in specs.
Target:
arm-samsung-linux-gnueabi
Configured with:
/home/scsuh/workplace/final/toolchain-script/toolchain_build_arm/gcc-4.3.1/configure
--prefix=/usr
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-samsung-linux-gnueabi
--enable-languages=c,c++
--with-sysroot=/usr/local/arm/4.3.1-eabi-armv6
--with-build-time-tools=/usr/local/arm/4.3.1-eabi-armv6/usr/arm-samsung-linux-gnueabi/bin
--enable-__cxa_atexit
--enable-target-optspace --with-gnu-ld
--with-pkgversion='for S3C64XX
Samsung Electronics AP Development Team' --enable-shared
--with-gmp=/usr/local/arm/4.3.1-eabi-armv6/gmp
--with-mpfr=/usr/local/arm/4.3.1-eabi-armv6/mpfr
--disable-nls --enable-threads
--disable-multilib --disable-decimal-float
--with-arch=armv6
--with-float=softfp --with-fpu=vfp --enable-symvers=gnu
Thread model: posix
gcc version 4.3.1 (for S3C64XX Samsung Electronics AP Development Team)
커널 소스의 최상위 경로에 있는 Makefile을 보면
CROSS_COMPILE 이 다음과 같이 되어 있습니다.
ARCH ?= arm
CROSS_COMPILE ?=
/usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-
이것이 맞나요?
CROSS_COMPILE ?=
arm-linux-
이렇게 하여 커널 소스를 빌드하면 아래와 같이 컴파일 오류가 납니다.
...
CC arch/arm/kernel/elf.o
AS arch/arm/kernel/entry-armv.o
AS arch/arm/kernel/entry-common.o
CC arch/arm/kernel/irq.o
CC arch/arm/kernel/process.o
/tmp/cc1rZecc.s: Assembler
messages:
/tmp/cc1rZecc.s:2428: Error:
can't resolve `.text' {.text section} - `.LFB1047' {.ARM.extab section}
make[1]: ***
[arch/arm/kernel/process.o] Error 1
make: *** [arch/arm/kernel]
Error 2
CD에 포함되어 있는 Toolchain으로 컴파일을 진행했을
때도 오류가 납니다.
다시 확인하시어 회신 주시기 바랍니다.