查看“Crosstool-ng制作交叉编译工具链”的源代码
来自Ubuntu中文
←
Crosstool-ng制作交叉编译工具链
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
'''之所以用crosstool-ng是因为crosstool-ng是新的用来建立交叉工具链的工具,它是crosstool的替换者。crosstool的gcc版本只能到4.1.1,无法编译版本高于2.6.29的linux内核。而crosstool-ng一直保持着更新,现在最新能够建立 gcc 4.3.2版本,可用来编译最新内核。 编译的系统环境是 ubuntu 10.10 + crosstool-ng 1.11.1 目标平台 ARMv4t, arm9tdmi''' = 配置ubuntu编译环境 = 安装编译所需的包 sudo apt-get install sed bash cut dpkg-dev bison flex patch texinfo automake m4 libtool stat cvs websvn tar gzip bzip2 lzma readlink libncuses5-dev bison flex texinfo automake libtool patch gcj cvs cvsd gawk -y 安装结束以后就可以用了。 如果后面出现编译错误,再增加相应的包即可 = 安装crosstool-ng = # 首先从官方网站上下载crosstool-ng的源码包http://ymorin.is-a-geek.org/download/crosstool-ng/crosstool-ng-1.11.1.tar.bz2 # 将此源码包解压缩并编译安装 tar xvjf crosstool-ng-1.11.1.tar.bz2 cd crosstool-ng--1.11.1 make sudo make install # 如果一切正常,则ct-ng命令就可以用了 注:编译的时候如果出现错误,可以利用apt-get的方式安装相应的包即可 = 配置自己的交叉编译器 = crosstool-ng可以配置各种平台的交叉编译器,也可以构建符合自己实用条件的个性编译器。下面以ARM平台为例,制作具有一定通用性的交叉编译器。这里我们从一个现成的编译器配置开始,用例子里的arm-unknown-linux-gnueabi作为配置的基础,然后来做一个交叉编译器。 将crosstool-ng源码包中samples/arm-unknown-linux-gnueabi/下的crosstool.config拷贝到源码包主目录下,在源码包主目录下执行 cp samples/arm-unknown-linux-gnueabi/crosstool.config .config 然后执行: ct-ng menuconfig 进入配置菜单,与linux内核很类似\\ 先检查一下 Target options ---> Target Architecture (arm) ---> # 注意看这项是不是ARM平台 ...... Floating point: (software) ---> # 对于很多ARM架构CPU来说是不支持硬浮点运算的,所以选择软件方式有更好的兼容性 ...... [*] Use EABI # 是否实用EABI方式,对某些指令采用异常的方式来处理(如除法等) = 自动下载和编译 = 下载 = 安装交叉编译器和测试 = 安装
返回
Crosstool-ng制作交叉编译工具链
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
登录
导航
首页
最近更改
随机页面
页面分类
帮助
搜索
编辑
编辑指南
沙盒
新闻动态
字词处理
工具
链入页面
相关更改
特殊页面
页面信息