如何獲得clang ++下面的cmake分支的等價物?CMake:分支在叮噹的版本
if (GXX_VERSION VERSION_GREATER 4.5 OR GXX_VERSION VERSION_EQUAL 4.5)
...
謝謝,
如何獲得clang ++下面的cmake分支的等價物?CMake:分支在叮噹的版本
if (GXX_VERSION VERSION_GREATER 4.5 OR GXX_VERSION VERSION_EQUAL 4.5)
...
謝謝,
出於某種原因piokuc的解決方案並沒有爲我工作,所以我做了以下內容:
EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} --version OUTPUT_VARIABLE clang_full_version_string)
string (REGEX REPLACE ".*clang version ([0-9]+\\.[0-9]+).*" "\\1" CLANG_VERSION_STRING ${clang_full_version_string})
if (CLANG_VERSION_STRING VERSION_GREATER 3.1)
....
CMake的定義以下爲鐺:
在cmake的v3.1.3我不得不檢查CMAKE_CXX_COMPILER_VERSION因爲沒有CLANG_VERSION_STRING所以看起來像一個版本現在爲每種編譯器類型定義了更多的控制權。
這個工作對我來說:
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 3.2)
...
...
endif()
同樣,我們有VERSION_LESS
和VERSION_EQUAL
。
需要做些事情來獲得這些變量嗎? 使用CMake 2.8.10.1我不能使用它們開箱 – 2013-04-23 07:42:45
你用CMAKE_CXX_COMPILER =/path/to/clang ++調用了clang嗎? – piokuc 2013-04-23 09:14:04
你也可以像這樣在你的CMakeFiles.txt中添加'find_package(Clang REQUIRED)':https://github.com/Fadis/libdcompile/blob/master/CMakeLists.txt – piokuc 2013-04-23 09:16:34