2005-06
08

昨天编译完binutils就一点多了,……困啊。今天继续。

首先需要把环境变量重新设置一下(因为昨天关机了):

 $ export TARGET=powerpc-kurobox-linux-gnu
 $ export PREFIX=/home/charlee/cross/tools 

然后我们准备开始编译gcc的第一遍。编译之前首先要准备好两个东西,一个是C语言库的头文件,一个是内核源码的头文件。昨天我们已经解压了glibc和kernel,现在只需要把这些头文件复制到目标目录下面就可以了。

 $ cp -a glibc-2.3.5/include/ $PREFIX/$TARGET
 $ cp -a linux-2.6.11.11/include/linux/ $PREFIX/$TARGET/include
 $ cp -a linux-2.6.11.11/include/asm-ppc/ $PREFIX/$TARGET/include
 $ cd $PREFIX/$TARGET/include
 $ ln -s asm-ppc asm

之后回到工作目录 /home/charlee/cross 下,为gcc建立编译目录:

 $ mkdir gcc-build-bootstrap

编译gcc:

 $ cd gcc-build-bootstrap
 $ ../gcc-4.0.0/configure --target=$TARGET --prefix=$PREFIX \ 
   --without-headers --with-newlib --with-gnu-as --with-gnu-ld \ 
   --with-local-prefix=${PREFIX}/${TARGET} --disable-shared
 $ make all-gcc

结果编译时报告 pthread.h 和 unistd.h 出错。



这篇文章有 4 条评论了,快来一起讨论讨论吧!
#1
匿名
2009-05-03 15:29

楼主,
急死人了
最后问题解决没有!

#2
匿名
2009-05-03 15:31

正在尝试编译一个面向powerpc指令集的编译器
结果编译时报告 pthread.h 和 unistd.h 出错!
问题解决没有?
email:yangf126@gmail.com

#3
fcicq
2009-05-03 19:31

应使用 crosstool, crossdev 等现成工具直接构建工具链.

#4
匿名
2009-05-03 21:10

如果用crosstool,是否只用下载在(一)中所用的一些工具源码(binutils ,gcc,..),其他的gdb,。。。等等需要吗?

添加评论

Security Code: