文档详情

搭建arm-linux-gcc-4.6.1.doc

发布:2017-12-13约1.72万字共21页下载文档
文本预览下载声明
Ubuntu11.04中搭建交叉编译环境(arm-linux-gcc-4.6.1版本) 声明:本文主要参考/xt_xiaotian/article/details/6836739,并根据实际情况作了一定的修改与说明 编译环境: 内核名称:Linux 内核发行版:2.6.38-11-generic 内核版本:#50-Ubuntu SMP Mon Sep 12 21:18:14 UTC 2011 硬件架构名称:i686 硬件平台:i386 操作系统:GNU/Linux 当前系统gcc版本号:4.5.2 在Linux中建立整个ARM交叉编译环境的整体过程为: 1、 下载源码包 2、 建立编译目录并设置环境变量 3、 安装内核头文件 4、 安装二进制工具(binutils) 5、 建立初始编译器工具链(简版gcc) 6、 建立glibc库 7、 建立全套编译器工具链(full gcc) 8、 验证 一、下载源码包 GNU的所有源码文件都可以到这个地址下载:/gnu/ Linux Kernel源代码可以去这里下载: mpc可以去这里下载: 下载的源码包如下: binutils-2.21.1.tar.bz2 gcc-4.6.1.tar.gz glibc-2.14.tar.gz glibc-linuxthreads-2.5.tar.bz2 glibc-ports-2.13.tar.gz gmp-5.0.2.tar.bz2 linux-5.tar.gz mpc-0.9.tar.gz mpfr-2.4.2.tar.gz 注:mpfr不建议使用3.0.0版本。mpfr-3.0.0有Bug,会导致gcc编译不过。 二、建立编译目录并设置环境变量 选定自己的工作目录,如我选择/opt/embedded作为自己的工作目录。然后再embedded中建立build-tools、kernel、tools三个文件夹。实例: root@ubuntu:/opt/ming# cd /opt/ root@ubuntu:/opt# mkdir embedded root@ubuntu:/opt# cd embedded/ root@ubuntu:/opt/embedded# mkdir build-tools kernel tools root@ubuntu:/opt/embedded# cd build-tools/ root@ubuntu:/opt/embedded/build-tools# mkdir build-binutils build-boot-gcc build-glibc build-gcc 各文件夹的作用如下: /opt/embedded:交叉编译环境的主目录 /opt/embedded/build-tools:存放binutils、gcc、glibc等GNU源码和用来编译这些源代码的目录 /opt/embedded/kernel:用来存放Linux内核源代码 /opt/embedded/tools:用来存放编译好的交叉编译工具和库文件 /opt/embedded/build-tools/build-binutils:编译binutils的目录 /opt/embedded/build-tools/build-boot-gcc:编译gcc启动部分的目录 /opt/embedded/build-tools/build-glibc:编译glibc的目录 /opt/embedded/build-tools/build-gcc:编译整个gcc的目录 建立好编译目录之后便是设置环境变量(建议直接在~/.bashrc中修改,注意修改之后要重新运行Terminal)。如下: export PRJROOT=/opt/embedded export TARGET=arm-linux export PREFIX=$PRJROOT/tools export TARGET_PREFIX=$PREFIX/$TARGET export PATH=$PREFIX/bin:$PATH 各个环境变量的意义如下: PRJROOT:整个交叉编译环境的根目录 TARGET:目标文件对应的architecture,arm-linux表示编译出来的target只能在arm architecture中运行 PREFIX:目标文件夹的路径前缀 TARGET_PREFIX:目标文件夹的路径前缀路径 PATH:可执行文件路径,这里主要指定编译工具等 三、安装内核头文件 将Linux内核源码解压至$PRJROOT/kernel目录,然后建立几个文件的符号链接,最后生成version.h文件。实例: 首先解压Linux内核源文件 root@ubuntu:/opt/embedded/kernel# cp /m
显示全部
相似文档