更多分享内容可访问我的个人博客
crossdev和aarch64交叉编译链的安装指令很简单,网上随处可搜到。这里主要指出其中的一个bug。即在编译aarch64-linux-gnu glibc时出现no such instruction
的bug。该错误的意思主要是缺少汇编指令。但是并不是binutils的问题,而是编译glibc时自动选择的编译器为gcc(应该是遵照了/etc/portage/make.conf
中的设置,没有自动换过来),而gcc在系统上指的是x86_64的gcc。查看是否是该原因引起的错误,看日志文件中CC
选项。修复该错误只需要在crossdev命令前加上CC=aarch64-unknown-linux-gnu-gcc
。然后在编译cross-aarch64-unknown-linux-gnu-gcc-stage2
时,再用回x86_64的gcc。