最近在做powerpc460的复位引导代码(boot rom),首先得配置编译环境。
powerpc架构被apple弃用后,它的用武之地也只限于航天、航空、汽车电子等工业领域了。用的地方少了,这方面的文章自然也变少了,但还是有一部分文档。
如有介绍如何通过源码编译,手工制作的文章,这种方式费时费力,还可能有版本和包依赖的问题,不建议。以前只在配置gdb远程单步调试环境时才使用过(交叉编译工具链一般不提供gdbserver);也有介绍在ubuntu下使用新立得包管理器安装的文章(Linux部分发行版自带powerpc的交叉编译工具链,直接安装即可使用),写得不错,但不够简明,把简单问题复杂化了。
于是有了这篇文章,方便自己,也方便他人。
安装powerpc交叉编译工具链
apt install gcc-powerpc-linux-gnu binutils-powerpc-linux-gnu
gcc : gcc powerpc版
binutils : binary处理工具,反汇编,获得符号表等都要用到
安装完成后,查看一下cross gcc的版本号及编译时配置
powerpc-linux-gnu-gcc -v
如果要编译u-boot,需要一些额外的包
apt install bc gcc make
bc : 用于uboot检查产生的binary文件,高版本的u-boot可能会用到
gcc : 宿主机gcc,用于编译生成mkimage等工具
make : Makefile解释程序
如果要编译c++代码
apt install g++-powerpc-linux-gnu
经测试,debian 9, debian 10 下编译u-boot2016正常。