apt源arm gcc交叉编译器注意事项
做嵌入式 Linux 开发时候都需要使用交叉编译工具,这些一般是方案厂商提供,但我们通常也可以使用那些打包好的通用交叉编译工具,比如 Debian 上 apt 也有打包好的 arm 交叉编译工具: gcc-arm-linux-gnueabi 和 gcc-arm-linux-gnueabihf,对应 c++ 版本以 g++ 开头,这两类主要区别在于 CPU 对于浮点的处理上,涉及到 armel 和 armhf 架构的区别,详情参照这里,你只需要选择对应开发板的架构工具即可。
由于是 Debian 自己维护更新的包,上述的两个交叉编译工具通常都会更新比较频繁,会支持最新的标准和特性,但是我们的开发板上系统通常都不是最新的,所以在使用时需要注意,否则会出现编译后的程序无法在开发板上运行。
最近在将 mruby 应用到嵌入式环境时就遇到这个问题。