编译linux内核和u-boot这两个东西,我是用了两个不同的交叉编译器,其实只有一点点的不同,但是用编译内核的编译器去编译u-boot会报错,虽然我有去修改u-boot的编译选项,但是尝试了网络上好多的办法,例如修改编译选项或者定义使用私有库等操作,均得到一致的错误结果,最后在u-boot的官方网站得到噩耗,说要重新制作交叉编译器,加入软件浮点的支持才可以。
这里我们先说简单点的安装内核的交叉编译器吧,主要有两套方案:
方案一:
yaourt -S arm-2007q1-arm-none-linux-gnueabi
安装CodeSourcery出的编译器,如果比较懒惰的话,选择不编辑PKGBUILD,直接安装的就是2007q1这个版本的,如果你想要追新的话,可以在安装arm-2010.09-50-arm-none-linux-gnueabi 不过好像用来编译我的这个内核版本会编译不过,后来我才知道的
yaourt -S arm-2010.09-50-arm-none-linux-gnueabi
如果想自定义版本,可以在提示编辑PKGBUILD的时候手动编辑PKGBUILD文件,修改pkgname pkgver pkgrel source md5sums等几个变量,具体的修改为多少依据你从CodeSourcery下载的交叉编译器的版本来确定。其实主要修改source和md5sums就好了,版本啊什么的只是用来你自己识别的,我就后悔没有修改版本等参数,导致虽然是装的高版本的编译器,但是查询软件包的时候还是显示的是2007q1的,都弄混了,但是都不影响内核的编译。此方案的优点是安装时间少,缺点是已经是CodeS