OS X:CMake忽略CMAKE_C_COMPILER

时间:2016-09-13 18:57:50

标签: c macos cmake cmake-gui trilinos

我正在尝试在我的OS X 10.11.6笔记本电脑上构建Trilinos并遇到以下问题:CMake使用Apple的Clang代替GCC

... 

Probing the environment ...

-- USE_XSDK_DEFAULTS='FALSE'
-- CMAKE_BUILD_TYPE='RELEASE'
-- BUILD_SHARED_LIBS='FALSE'
-- CMAKE_C_COMPILER_ID='AppleClang'
-- CMAKE_C_COMPILER_VERSION='7.3.0.7030031'
-- CMAKE_CXX_COMPILER_ID='AppleClang'
-- CMAKE_CXX_COMPILER_VERSION='7.3.0.7030031'

...

尽管我在调用中传递了gcc / g ++地址作为参数:

cmake -D CMAKE_C_COMPILER=/usr/bin/gcc -D CMAKE_CXX_COMPILER=/usr/bin/g++  ..

我分别安装了GCC和G ++:

$ gcc --version

gcc (GCC) 4.9.2 20141029 (prerelease)

Copyright (C) 2014 Free Software Foundation, Inc.

UPD如果有人感兴趣,我已放弃并将开发转移到ubuntu。如果您找到了解决方法,请在下面发表评论

1 个答案:

答案 0 :(得分:-1)

当编译器设置为 explicitely 时,CMake不会尝试猜测其标识(变量*_COMPILER_ID*_COMPILER_VERSION

如果你想(并且通常你想要)这个标识正确地反映你的编译器,你需要明确地设置这些变量

要设置几个描述建筑环境的变量,您可以使用toolchain files