我在 Linux 上使用英特尔 Fortran 编译器。我知道,如果我输入“ifort -dumpmachine”,它将提供编译的目标机器配置(例如“x86_64-linux-gnu”),但如果我想针对不同的操作进行编译,我需要知道如何更改它系统(例如不同版本的 Linux)。 “-arch”编译器选项允许您更改处理器架构,但我需要知道如何更改操作系统。
最佳答案
交叉编译是高度依赖处理器的东西,因此没有通用的 Fortran 答案。据我所知,Intel Fortran 仅适用于有限数量的架构 - x86 和 x86-64。 Linux、Windows 和 OS X 有单独的产品,您不能在它们之间进行交叉编译。
您没有具体说明不同版本的 Linux 的含义。您应该在您的编译器版本的手册中找到哪个内核版本需要生成的可执行文件。原则上,您可以针对所有此类发行版。正确的 Intel 运行时库和 glibc 以及您使用的其他库也可能存在问题。您可以通过静态链接计算机上的库来解决此问题(仅对 Intel 运行时库使用 -static
或 -static-intel
),但请注意,它们具有也与您的目标架构兼容(特别是,如果它们需要高级指令集,如 SSE(2) 或 AVX)。
关于fortran - 如何在 fortran 中更改目标机器配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12043566/