我最近更新了我的OS X到Mountain Lion。不幸的是,FreeBSD切換到不支持OpenMP的編譯器套件(llvm/clang),我需要它,並且Apple將該套件設置爲默認編譯工具。cmake和默認編譯器
幸運的是,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)有什麼意義?我該如何使用它們?
謝謝。
感謝您非常明確的答案的事情。 – 2013-03-08 11:26:56
我只是補充說,第一個選項(env。vars'CC'和'CXX')通常被視爲爲CMake選擇編譯器的首選方式。 **和**必須在新的二叉樹中完成。一旦CMake檢測到編譯器,它們就會被燒入其緩存中(並且很可能也是'CMakeTemp')。 – Angew 2013-03-08 11:27:26
你非常歡迎。請注意,第一種方法(即設置「CC」和「CXX」)被CMake開發者認爲是首選。我發現最後一種方法在使用自動構建時非常有用。 – 2013-03-08 11:28:40