我最近将我的 OS X 更新为 Mountain Lion。不幸的是,FreeBSD 切换到了我需要的不支持 OpenMP 的编译器套件 (llvm/clang),而 Apple 将该套件设置为默认编译工具。
幸运的是 OS X 10.8 包含一个旧的 gcc 4.2 编译器,它仍然可以用于一些遗留代码。
我使用 cmake (v2.8) 构建程序。为了使用 gcc 编译器,我首先尝试在 CMakeLists.txt 脚本中设置两个变量。更具体地说,我设置CMAKE_C_COMPILER
和CMAKE_CXX_COMPILER
。但是,设置这两个变量没有效果:cmake 一直使用不支持 OpenMP 的 llvm 编译器。
然后我尝试设置两个环境变量,CC
并且CXX
(在 .profile/.bashrc 脚本中)指向用于 CMake 变量的相同编译器。通过使用这两个变量,我可以编译我的源代码。
我的问题是:这两个 CMake 变量(CMAKE_..._COMPILER)有什么意义?我应该如何使用它们?
谢谢。