CMakeLists.txt 的基礎使用

目錄

1. 迅速導入所有源文件

2.設置頭文件所在的目錄

3.設定使用 C++11

4. 打印查看變量值

5. 把執行文件和庫文件編譯後的文件放在同一個目錄下、方便管理


1. 迅速導入所有源文件

#add_executable(VSCodeExe main.cpp)

#把 src 目錄下的源文件目錄以列表的形式存儲到 DIR_SRCS 中
aux_source_directory(./src DIR_SRCS)

#把 srcB 目錄下的源文件目錄以列表的形式存儲到 DIR_SRCSB 中
aux_source_directory(./srcB DIR_SRCSB)
add_executable(VSCodeExe 
                main.cpp
                ${DIR_SRCS}
                ${DIR_SRCSB})

#循環打印 DIR_SRCS 內容
FOREACH(F ${DIR_SRCS})
MESSAGE(${F})
ENDFOREACH(F)

#循環打印 DIR_SRCSB 內容
FOREACH(F ${DIR_SRCSB})
MESSAGE(${F})
ENDFOREACH(F)

工程文件結構、編譯打印輸出、執行後結果等信息如下: 

2.設置頭文件所在的目錄

#設置頭文件所在目錄
include_directories(${PROJECT_SOURCE_DIR}/src/)
include_directories(${PROJECT_SOURCE_DIR}/srcB/)

3.設定使用 C++11

add_definitions(-std=c++11)

4. 打印查看變量值

# 輸出打印資源目錄,與HELLO_SOURCE_DIR 一樣 
MESSAGE(STATUS "This is PROJECT_SOURCE_DIR " ${PROJECT_SOURCE_DIR})
# 輸出打印 CMake 資源目錄,與 PROJECT_SOURCE_DIR 一樣 
MESSAGE(STATUS "This is CMAKE_SOURCE_DIR " ${CMAKE_SOURCE_DIR})
MESSAGE(STATUS "This is PROJECT_NAME " ${PROJECT_NAME})
MESSAGE(STATUS "This is PROJECT_VERSION " ${PROJECT_VERSION})

 

5. 把執行文件和庫文件編譯後的文件放在同一個目錄下、方便管理

  • 設定執行文件輸出到特定路徑
set(EXECUTABLE_OUTPUT_PATH  /Users/Desktop/ProgramTests/VSCodeInstall)
  • 設定庫文件輸出到特定路徑
SET(LIBRARY_OUTPUT_PATH /Users/Desktop/ProgramTests/VSCodeInstall/lib)

編譯後、執行文件和庫會在指定目錄中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章