交叉编译时不要忘记-march编译选项
2011-08-27 15:33
127 查看
必须写在这,要不然过一段时间又要忘记。
每个编译器都有默认的-march选项,其值一般都随主流芯片走。
比如老一点的arm交叉编译器,默认的选项可能是-march=armv4t,新一点的则可能是-march=armv6等等。
用老编译器编出来的二进制文件,只要没使用特殊指令集,大多数可以跑在新片子上,因为arm的向下兼容。
但是用新编译器默认选项编出来的二进制可执行文件,基本上无法在老的平台上跑,因为新架构可能会引入一些新指令。
所以用较新的编译器为老板子编译代码,一定不能忘记设置-march这个编译选项,否则很很很可能跑不起来!!
每个编译器都有默认的-march选项,其值一般都随主流芯片走。
比如老一点的arm交叉编译器,默认的选项可能是-march=armv4t,新一点的则可能是-march=armv6等等。
用老编译器编出来的二进制文件,只要没使用特殊指令集,大多数可以跑在新片子上,因为arm的向下兼容。
但是用新编译器默认选项编出来的二进制可执行文件,基本上无法在老的平台上跑,因为新架构可能会引入一些新指令。
所以用较新的编译器为老板子编译代码,一定不能忘记设置-march这个编译选项,否则很很很可能跑不起来!!
相关文章推荐
- busybox交叉编译选项
- mplayer交叉编译configure选项设置
- 交叉编译时64位的程序时,需要编译选项和连接选项需要添加那些参数
- 交叉编译选项解释
- Qt5.8交叉编译配置选项详解(./configure --help)
- linux 开源项目 交叉编译选项的配置
- arm处理器编译选项-march的作用
- 交叉编译opencv时候ffmpeg选项始终为no的解决方法
- arm处理器编译选项-march的作用
- directfb 交叉编译选项
- c++工程编译选项符号忘记定义导致程序运行不确定问题
- 内核编译选项20要20不要
- 交叉编译中关于ARM的选项
- 交叉编译选项解释
- C/C++ 跨平台交叉编译、静态库/动态库编译、MinGW、Cygwin、CodeBlocks使用原理及链接参数选项
- Ubuntu16.4(64位)下gcc-linaro-arm-linux-gnueabihf交叉编译环境搭建
- Android-NDK:设置NDK编译选项
- 在Red Hat Enterprise Linux 5中安装交叉编译工具arm-linux-gcc-4.3.2.tgz
- linux automake 交叉编译
- 搭建交叉编译工具链