【发布时间】:2011-03-16 03:27:08
【问题描述】:
在cmake中使用enable_language时,总是按照一定的默认顺序搜索编译器。我想知道如何改变这个顺序。例如,如果我的系统同时安装了 ifort (icc) 和 gfortran (g++),并且我想使用 ifort (icc) 而不是 gfortran (g++),我该如何设置呢?
澄清:我知道我们可以通过更改变量 CMAKE_Fortran_Compiler 来显式切换编译器,但我想要做的是修改 cmake 搜索可用编译器的默认顺序,如果用户没有指定这样的偏好。
根据我目前的发现,一种解决方法是在 project(xxx) 之前设置 CMAKE_Fortran_Compiler,以便以后永远不会覆盖此变量,但显然这不是最好的方法,因为如果轮到我将需要 gfortran没有 ifort 可用。
顺便问一下,寻找此类信息的最佳位置是什么?文档似乎不是很完整..
谢谢!
【问题讨论】:
-
我认为标签
c++、fortran,甚至compiler都不合适。这个问题与语言及其实现没有任何关系。这真的只是关于 cmake。 -
查找此信息的最佳位置是 StackOverflow (grin) 或 CMake 邮件列表。虽然 Wiki 和内置文档通常有很好的答案,但这样的事情经常被搁置一旁。对于您正在寻找的内容,我也没有找到任何其他解决方案。