我是cmake的新手。我正在使用以下:cmake編譯器布爾開關問題
cmake -DUSE_OLD_CODE:BOOL=FALSE
這工作正常。但是,當我將FALSE
更改爲TRUE
時,編譯器似乎認爲USE_OLD_CODE
是一個文件,然後抱怨它找不到它。
下面是的CMakeLists.txt
cmake_minimum_required(VERSION 3.5.1)
集(CMAKE_INCLUDE_CURRENT_DIR ON)
add_compile_options(-std = C++ 11/W4/WD 「4127」/ WD 「4201」/ MP)
IF(USE_OLD_CODE) add_compile_options(/ d 「USE_OLD_CODE」) ENDIF(USE_OLD_CODE)
集(SOURCES 「的main.cpp」 )
集(OLD_CODE_SOURCES 「OldCode.cpp」 )
集(NEW_CODE_SOURCES 「NewCode.cpp」 )
IF(USE_OLD_CODE ) 集(SOURCES $ {SOURCES} 「$ {OLD_CODE_SOURCES}」) ELSE(USE_OLD_CODE) 集(SOURCES $ {SOURCES} 「$ {NEW_CODE_SOURCES}」) ENDIF(USE_OLD_CODE)
IF(WIN32) add_executable($ {EXECUTABLE} WIN32 $ {SOURCES}) ELSEIF(UNIX) add_executable($ {EXECUTABLE} $ {SOURCES}) ENDIF(WIN32)
任何想法我我做錯了嗎?
感謝
詹姆斯
你的意思是你改變了'FALSE'部分TRUE;或'BOOL'部分TRUE;? – Simple
可能是https://stackoverflow.com/a/10364240/1597714 – AMA
的副本我將FALSE部分設置爲TRUE。上面編輯。謝謝。 – GUIDeveloper