コンパイル(8)



LS-GLのlennyにGCC4.2をインストールする。

lenny1:# apt-get install gcc-4.2

あとMakefile内の
HOSTCC = gcc
HOSTCXX = g++

の箇所を

HOSTCC = gcc-4.2
HOSTCXX = gcc++-4.2

に変える。
またupdate-alternativesでいつでも差し替えできるように設定する。

lenny1:/mnt/TOOL# update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.2 42 --slave /usr/bin/g++ g++ /usr/bin/g++-4.2 --slave /usr/bin/gcov gcov /usr/bin/gcov-4.2
lenny1:/mnt/TOOL# update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.3 43 --slave /usr/bin/g++ g++ /usr/bin/g++-4.3 --slave /usr/bin/gcov gcov /usr/bin/gcov-4.3
lenny1:/mnt/TOOL# update-alternatives --config gcc

There are 2 alternatives which provide `gcc'.

Selection Alternative
-----------------------------------------------
* 1 /usr/bin/gcc-4.2
+ 2 /usr/bin/gcc-4.3

Press enter to keep the default[*], or type selection number: 1
Using '/usr/bin/gcc-4.2' to provide 'gcc'.

4.2に切り替わった。

あとはさっきのコンパイルソースごとLS-GLの環境にコピーしてくる。
実機でコンパイル。

・・・
LD lib/zlib_inflate/built-in.o
LD lib/built-in.o
CC lib/bitmap.o
CC lib/cmdline.o
CC lib/ctype.o
CC lib/dec_and_lock.o
CC lib/dump_stack.o
CC lib/extable.o
CC lib/idr.o
CC lib/int_sqrt.o
CC lib/ioremap.o
CC lib/irq_regs.o
CC lib/klist.o
CC lib/kobject.o
CC lib/kobject_uevent.o
CC lib/kref.o
CC lib/prio_tree.o
CC lib/radix-tree.o
CC lib/rbtree.o
CC lib/reciprocal_div.o
CC lib/rwsem-spinlock.o
CC lib/sha1.o
CC lib/string.o
CC lib/vsprintf.o
AR lib/lib.a
CC [M] lib/crc-ccitt.o
GEN .version
CHK include/linux/compile.h
dnsdomainname: Host name lookup failure
UPD include/linux/compile.h
CC init/version.o
LD init/built-in.o
LD .tmp_vmlinux1
KSYM .tmp_kallsyms1.S
AS .tmp_kallsyms1.o
LD .tmp_vmlinux2
KSYM .tmp_kallsyms2.S
AS .tmp_kallsyms2.o
LD vmlinux
SYSMAP System.map
SYSMAP .tmp_System.map
MODPOST vmlinux
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
GZIP arch/arm/boot/compressed/piggy.gz
AS arch/arm/boot/compressed/piggy.o
CC arch/arm/boot/compressed/misc.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
lenny1:/mnt/TOOL/linux-2.6.22_lsp.3.0.5#

最後まで通った。