建立交叉编译环境时GCC编译出现问题,请高手指教~!
我的PC上装了FC5。现在一切就绪就差交叉编译平台了。我下载了binutils-2.14、gcc-3.3.2、glibc-2.2.5和linux-2.6.8等包。binutils编译没问题。但在编译GCC时出现了奇怪的问题。现象如下:我的工作目录结构如下:
~/crosstool/gcc-3.3.2-----------------------------这个目录存放了解压缩后的源代码。
~/crosstool/gcc-3.3.2/build-arm-linux--------这个目录用来存放变异产生的临时文件和变异配置等
首先我在~/crosstool/gcc-3.3.2/gccconfig/arm/t-linux 文件里添加了如下两个配置:
TARGET_LIBGCC2_CFLAGS += -Dinhibit_libc -D__gthr_posix_h
T_CFLAGS = -Dinhibit_libc -D__gthr_posix_h
然后在~/crosstool/gcc-3.3.2/build-arm-linux目录下输入命令行:
../configure --target=arm-linux --prefix=/usr/local/arm/3.3.2 --with-headers=~/crosstool/linux-2.6.x/include --disable-shared --disable-threads --enable-language="c"
建立makefile。接着输入make命令出现了如下错误:
#--------------------------------------------------------------------------------------------------------------------------------------------------
gcc -c -Dinihibit_libc -D__gthr_posix_h -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/config -I../../gcc/../include ../../gcc/read-rtl.c -o read-rtl.o
In file included from ../../gcc/read-rtl.c:24:
../../gcc/rtl.h:132: 警告:位段类型 ‘code’ 是一个 GCC 扩展
../../gcc/rtl.h:135: 警告:位段类型 ‘mode’ 是一个 GCC 扩展
../../gcc/read-rtl.c: 在函数 ‘fatal_with_file_and_line’ 中:
../../gcc/read-rtl.c:53: 警告:传统 C 不接受 ISO C 风格的函数定义
../../gcc/read-rtl.c: 在函数 ‘read_rtx’ 中:
../../gcc/read-rtl.c:653: 错误:自增运算中的左值无效
make[1]: *** [read-rtl.o] 错误 1
make[1]: Leaving directory `/root/crosstool/gcc-3.3.2/build-arm-linux/gcc'
make: *** [all-gcc] 错误 2
#--------------------------------------------------------------------------------------------------------------------------------------------------
愚人百思不得其解。请各位高手指个路。谢谢~!