构建powerpc交叉编译环境完稿

上传人:cn****1 文档编号:486798296 上传时间:2022-12-12 格式:DOC 页数:6 大小:35KB
返回 下载 相关 举报
构建powerpc交叉编译环境完稿_第1页
第1页 / 共6页
构建powerpc交叉编译环境完稿_第2页
第2页 / 共6页
构建powerpc交叉编译环境完稿_第3页
第3页 / 共6页
构建powerpc交叉编译环境完稿_第4页
第4页 / 共6页
构建powerpc交叉编译环境完稿_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《构建powerpc交叉编译环境完稿》由会员分享,可在线阅读,更多相关《构建powerpc交叉编译环境完稿(6页珍藏版)》请在金锄头文库上搜索。

1、构建powerpc交叉编译环境(完稿)详细见:嵌入式开发系统一般分为3种:1、连接式:(略)2、可抽换式:(略)3、独立式:(略)我们通常见到的是连接式。由于一般嵌入式开发系统存储大小有限,通常你都要在你的强大的pc机上建立一个用于目标机的交叉编译环境。这是一个由编译器、连接器和解释器组成的综合开发环境。交叉编译工具主要由以下三个组件组成:1、binutils2、gcc3、glibc:有时出于减小 libc 库大小的考虑,你也可以用别的 c 库来代替 glibc,例如 uClibc、dietlibc 和 newlib。工具链主要包括binutils, gcc, glibc三个组件,由于各个组件

2、的开发和发布彼此独立,所以并非用各组件的任意版本都能顺利完成建立工作。建立一个交叉编译工具链是一个相当复杂的过程,如果你不想自己经历复杂的编译过程,网上有一些编译好的可用的交叉编译工具链可以下载。crosstool工具推荐如下组合:其中14经过我实际验证。1、 gcc-3.4.5 cgcc-3.4.5glibc-2.2.5binutils-2.15linux-2.6.82、gcc-3.4.5cgcc-3.3.6glibc-2.3.2binutils-2.15linux-2.6.8hdrs-2.6.12.03、gcc-3.4.5cgcc-3.4.5glibc-2.3.5binutils-2.15

3、linux-2.6.8hdrs-2.6.12.04、gcc-3.4.5cgcc-3.4.5glibc-2.3.6binutils-2.15linux-2.6.8hdrs-2.6.12.05、gcc-4.0.2cgcc-3.3.6glibc-2.3.2binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.06、gcc-4.0.2cgcc-4.0.2glibc-2.3.5binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.07、gcc-4.0.2cgcc-4.0.2glibc-2.3.6binutils-2.16.1linux-2.6.15

4、.4hdrs-2.6.12.08、gcc-4.1.0cgcc-3.3.6glibc-2.3.2binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.09、gcc-4.1.0cgcc-3.3.6glibc-2.3.5binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.010、gcc-4.1.0cgcc-3.3.6glibc-2.3.6binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.011、gcc-4.1.1cgcc-3.3.6glibc-2.3.5binutils-2.16.1linux-2.6.15.4

5、hdrs-2.6.12.012、gcc-4.1.1cgcc-3.3.6glibc-2.3.5binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.0tls13、gcc-4.1.1cgcc-3.3.6glibc-2.3.6binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.014、gcc-4.1.1cgcc-3.3.6glibc-2.3.6binutils-2.16.1linux-2.6.15.4hdrs-2.6.12.0tls 工具链主要包括binutils, gcc, glibc三个组件,由于各个组件的开发和发布彼此独立,所以并非用各

6、组件的任意版本都能顺利完成建立工作。下载内核:下载binutils:下载gcc:下载c连接库(glibc)和补丁:开发机: Intel(R) Celeron(R) CPU 2.26GHz fedora core 7目标板: powerpc4xx 一、准备工作cd /home/lsf这里用的用户名是lsfmkdir embedded再在这个项目目录 embedded 下建立三个目录 build-tools、kernel 和 tools。cd embedded mkdir build-tools kernel toolsbuild-tools-用来存放你下载的 binutils、gcc 和 gli

7、bc 的源代码和用来编译这些源代码的目录。kernel-用来存放你的内核源代码和内核补丁。tools-用来存放编译好的交叉编译工具和库文件。为了把源码和编译时生成的文件分开,一般的编译工作不在的源码目录中,要另建一个目录来专门用于编译。用以下的命令来建立编译你下载的binutils、gcc和glibc的源代码的目录。cd $PRJROOT/build-tools mkdir build-binutils build-boot-gcc build-gcc build-glibc gcc-patchbuild-binutils -编译binutils的目录build-boot-gcc -编译gcc

8、 启动部分的目录build-glibc -编译glibc的目录build-gcc -编译gcc 全部的目录gcc-patch -放gcc的补丁的目录将 binutils-2.10.1、gcc-2.95.3、glibc-2.2.3 和 glibc-linuxthreads-2.2.3 的源代码放入 build-tools 目录中export PRJROOT=/home/liushaofeng/embedded export TARGET=powerpc-linux export PREFIX=$PRJROOT/tools export TARGET_PREFIX=$PREFIX/$TARGET

9、export PATH=$PREFIX/bin:$PATH二、内核头文件设置cd $PRJROOT/kernel tar zxvf linux-2.4.20.tar.gz cd linux-2.4.20 make ARCH=ppc CROSS_COMPILE=powerpc-linux- menuconfig接下来为你的交叉编译环境建立你的内核头文件的链接mkdir -p $TARGET_PREFIX/include ln -s $PRJROOT/kernel/linux-2.4.20/include/linux $TARGET_PREFIX/include/linux ln -s $PRJR

10、OOT/kernel/linux-2.4.20/include/asm-ppc $TARGET_PREFIX/include/asm ln -s $PRJROOT/kernel/linux-2.4.20/include/asm-generic $TARGET_PREFIX/include/asm-generic也可以把 Linux 内核头文件拷贝过来用mkdir -p $TARGET_PREFIX/include cp -r include/linux $TARGET_PREFIX/include cp -r include/asm-ppc $TARGET_PREFIX/include cp

11、-r include/asm-generic $TARGET_PREFIX/include三、建立二进制工具(binutils)binutils是一些二进制工具的集合,其中包含了我们常用到的as和ld。首先,我们解压我们下载的binutils源文件。cd $PRJROOT/build-tools tar -xvzf binutils-2.10.tar.gz然后进入build-binutils目录配置和编译binutils。cd build-binutils ./binutils-2.10/configure -target=$TARGET -prefix=$PREFIX-target 选项是指

12、出我们生成的是 ppc-linux 的工具,-prefix 是指出我们可执行文件安装的位置。会出现很多 check,最后产生 Makefile 文件。有了 Makefile 后,我们来编译并安装 binutils,命令很简单。make make install四、建立二进制工具(binutils)进入 build-tools 目录,将下载 gcc 源代码解压cd $PRJROOT/build-tools tar -xvzf gcc-2.95.3.tar.gz在我们编译并安装 gcc ./gcc-2.95.3/configure -target=$TARGET -prefix=$PREFIX -

13、without-headers -enable-language=c -with-newlib (ppc) make all-gcc make install-gcc五、建立c连接库cd $PRJROOT/build-tools tar xvzf glibc-2.2.3.tar.gz tar xvzf glibc-linuxthreads-2.2.3.tar.gz -directory=glibc-2.2.3 cd build-glibc CC=powerpc-linux-gcc ./glibc-2.2.3/configure -host=$TARGET -prefix=/usr -enabl

14、e-add-ons -with-headers=$TARGET_PREFIX/include make make install_root=$TARGET_PREFIX prefix= install安装过程可能出现有两个文档目录不能成功安装,可以用-i选项略过错误继续安装make -i install_root=$TARGET_PREFIX prefix= install六、编译完整的gcc第二次完整编译gcc时,需要修改生成的lib库中的libc.so文件(/home/liushaofeng/embedded/tools/ppc-linux/lib/libc.so),将 GROUP ( /

15、lib/libc.so.6 /lib/libc_nonshared.a)改为GROUP ( libc.so.6 libc_nonshared.a)vim $TARGET_PREFIX/lib/libc.so在建立boot-gcc 的时候,我们只支持了C。到这里,我们就要建立全套编译器,来支持C和C+。-enable-languages=c,c+ 告诉 full gcc 支持 c 和 c+ 语言。然后编译和安装你的 full gcccd $PRJROOT/build-tools/build-gcc ./gcc-2.95.3/configure -target=$TARGET -prefix=$PREFIX -enable-languages=c,c+ make all make install

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号