2013-04-21 89 views
3

出於某種原因,CMake的C和C++編譯器默認設置爲/usr/bin/qcc。我已經按照this post並試圖命令Cmake錯誤設置編譯器

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

,但我得到的錯誤

CMake Error: The source directory [current directory]/CMAKE_CXX_COMPILER=/usr/bin/g++" does not exist.

爲什麼CMake的解釋我的命令作爲目錄,什麼是設置的CMake的編譯器的正確方法是什麼?

回答

7

你有正確的想法,但是你想在命令行是:

cmake -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ <path_to_source> 

的差別很微妙。 -D和被設置的變量之間應該沒有空格,這就是CMake將您的變量賦值解釋爲目錄的原因。此外,CMake使用CXX用於C++特定變量,這使它與Make保持一致。

+0

謝謝,我在後面的回答中沒有顯示缺少空格。 – 2013-04-21 14:45:08

1

這是CMAKE_CXX_COMPILER,而不是C++

+0

感謝您的接觸,但我仍然得到同樣的錯誤。 – 2013-04-21 13:59:43