目前,我調用CMake的從我的生成目錄,如下所示:如何讓CMake在系統PATH上使用默認編譯器?
CXX = 「/選擇/ GCC-4.8 /斌/ G ++」 cmake的..
獲得CMake的使用這個特定的編譯器。否則它使用操作系統默認編譯器。
我的PATH的「/opt/gcc-4.8/bin
」在其他所有內容之前。因此,在「CMakeLists.txt」文件中指定使用路徑上的默認g ++的方法,而不是預先添加環境變量?
目前,我調用CMake的從我的生成目錄,如下所示:如何讓CMake在系統PATH上使用默認編譯器?
CXX = 「/選擇/ GCC-4.8 /斌/ G ++」 cmake的..
獲得CMake的使用這個特定的編譯器。否則它使用操作系統默認編譯器。
我的PATH的「/opt/gcc-4.8/bin
」在其他所有內容之前。因此,在「CMakeLists.txt」文件中指定使用路徑上的默認g ++的方法,而不是預先添加環境變量?
CMake贊同PATH
環境變量的設置,但優先考慮通用編譯器名稱cc
和c++
。要確定哪個C編譯器將UNIX下的違約CMake的使用,運行:
$ which cc
要確定默認的C++編譯器,運行:
$ which c++
如果您在/opt/gcc-4.8/bin
生成一個符號鏈接c++
這指向/opt/gcc-4.8/bin/g++
,CMake默認應該使用GCC 4.8。
cc
的位置而不是c++
決定哪個c++
cmake要使用。因此,舉例來說,如果您有/usr/local/bin/c++
但/usr/local/bin/cc
,cmake仍會提取,而不是/usr/local/bin/c++
。在這種情況下,創建指向/usr/local/bin/gcc
的/usr/local/bin/cc
的符號鏈接將使cmake使用/usr/local/bin/c++
。
另一種方法是你的項目的語言明確設置爲C++:
project(foo CXX)
好的,謝謝。原來,我運行的shell腳本弄亂了我的PATH。對於有用的信息,接受這個答案「CMake尊重PATH環境變量的設置,但優先考慮通用編譯器名稱cc和C++」。 – Jeet 2013-04-18 15:53:46