ubuntu10.4安装交叉编译器arm-none-linux-gnueabi-gcc

<!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } A:link { color: #0000ff; so-language: zh-CN } -->

1 、源码下载

Crosstools-ng 下载地址

http://ymorin.is-a-geek.org/download/crosstool-ng/

同时对每一个版本都有相应的补丁我们尽量把这些补丁打上,这些补丁的下载地址是

http://ymorin.is-a-geek.org/download/crosstool-ng/01-fixes/

我这里选用的是 crosstool-ng-1.8.1.tar.bz2

并下载补丁

000-scripts_log_do_not_interpret_log_string_as_printf_format.patch

001-binutils_binutils_remove_faulty_patch.patch

002-kconfig_resync_curses_check_with_Linux_kernel.patch

2 、工具的安装

在使用之前必须安装一些软件

$ sudo apt-get install gawk autotools-dev automake texinfo libtool cvs patch bison flex libncurses5-dev

  1. 必要目录的创建

$ mkdir toolchain_build

$ mkdir toolchain_install

  1. 解压源码并打补丁

$ tar xvf crosstool-ng-1.8.1.tar.bz2

$ cd crosstool-ng-1.8.1

$ patch –p1 <   000-scripts_log_do_not_interpret_log_string_as_printf_format.patch

$ patch –p1 <   001-binutils_binutils_remove_faulty_patch.patch

$ patch –p1< 002-kconfig_resync_curses_check_with_Linux_kernel.patch

  1. 配置并编译 crosstool-ng-1.8.1

$ ./configure --prefix=/home/linux/s3c2410-2.6.35/toolchain/toolchain-install

$ make

$ make install

  1.  配置工具链选项

$ cd ../toolchain-build

$ cp ../crosstool-ng-1.8.1/samples/arm-unknown-linux-gnueabi/* ./

$ mv crosstool.config .config

$ ../toolchain-install/bin/ct-ng menuconfig

Paths and misc options --->

(${HOME}/src) Local tarballs directory

(${HOME}/x-tools/${CT_TARGET}) Prefix directory

修改为

Paths and misc options --->

(/home/linux/Downloads) Local tarballs directory // 源码包存放路径

(/home/linux/toolchain) Prefix directory // 工具生成后的安装路径

 

 

Target options --->

(armv4t) Architecture level

(arm9tdmi) Emit assembly for CPU

(arm920t) Tune for CPU

 

C compiler --->

[ ] Java

 

Operating System --->

[ ] Check installed headers

 

Paths and misc options --->

(1) Number of parallel jobs

 

Toolchain options --->

(none) Tuple's vendor string

 

C compiler --->

(crosstool-NG-${CT_VERSION}-farsight) gcc ID string

 

修改 .config 文件,将文件中的 2.6.33.2 全部改为 2.6.35

  1.  目标代码准备

拷贝下面文件到 /home/linux/Downloads 目录下:

binutils-2.19.1.tar.bz2

gcc-4.3.2.tar.bz2

glibc-ports-2.9.tar.bz2

linux-2.6.35.tar.bz2

ncurses-5.7.tar.gz

dmalloc-5.5.2.tgz

gdb-6.8.tar.bz2

gmp-4.3.2.tar.bz2

ltrace_0.5.3.orig.tar.gz

strace-4.5.19.tar.bz2

duma_2_5_15.tar.gz

glibc-2.9.tar.bz2

libelf-0.8.13.tar.gz

mpfr-2.4.2.tar.bz2

Sstrip.c

  1. 工具链编译

$ ../toolchain-install/bin/ct-ng build

这个过程比较时间比较长

  1. 环境变量的添加

修改文件 /etc/bash.bashrc 添加如下内容 最好在 /etc/profile   qtcreator似乎只认后者

export PATH=$PATH:/home/linux/toolchain/bin

重启配置文件

$ source bash.bashrc

  1. 工具链的测试

$ arm-none-linux-gnueabi-gcc –v

你可能感兴趣的:(String,ubuntu,assembly,工具,编译器,patch)