【发布时间】:2014-01-02 11:03:27
【问题描述】:
是否可以编译支持多个目标架构的单个gcc(前端)二进制文件,我可以在命令行中选择,如下所示:
$ gcc --architecture=linux-i386 ...
$ gcc --architecture=freebsd-arm ...
$ gcc --architecture=darwin-amd64 ...
我知道可以将 gcc 构建为交叉编译器,但是否可以使用命令行标志选择目标架构,而无需编写为每个架构启动不同 gcc 二进制文件的包装脚本?
对于 i386 和 amd64 -m32 和 -m64 似乎可以解决问题,但是如何选择 ARM 等?请注意,-march= 对我来说毫无用处,我无法将其从 i386 更改为 amd64。
【问题讨论】:
-
如果你想切换到 ARM,通常你会使用交叉编译器。您是否有任何特殊原因希望将其作为编译器标志而不是别名?
标签: gcc cpu-architecture