2011-03-23 84 views
3

什麼是測試編譯器是否是Cmake下的GCC的正確方法?cmake如果測試GCC

我見過if(CMAKE_COMPILER_IS_GNUCC)if(CMAKE_COMPILER_IS_GNUXX)但我沒有定義當我運行cmake。只是要清楚,我100%確定我正在使用GCC。

我只想添加特定於GCC的編譯器標誌。之前,我在檢查窗口後使用了else子句,但現在我想更通用。

回答

3

我想我發現了這個問題。這些屬性直到project聲明之後才被定義。切換順序,它似乎工作。

+0

CMake使用project()語句來確定你正在構建什麼類型的項目(C,C++,Fortran),因此它需要它能夠知道要搜索的編譯器。 project()和cmake_minimum_required()通常應該是你在CMake腳本中做的第一件事情。 – Milliams 2011-04-27 12:41:51