1. 程式人生 > >Cmake 編譯靜庫 動態庫 指定輸出路徑

Cmake 編譯靜庫 動態庫 指定輸出路徑

cmake_minimum_required(VERSION 3.11)

define_source_files()

Project(CmakeTest)
aux_source_directory(. src)
#add_executable(project1 ${src})                        #編譯為可執行程式
#add_library(project1 ${src})                           #編譯為靜態庫
#add_library(project1 SHARED ${src})                    #編譯為動態連結庫
#add_executable(project1 MACOSX_BUNDLE ${src}) #編譯為可執行程式 *.app #add_library(project1 MODULE ${src}) #編譯為程式資源包 *.bundle #set_target_properties(project1 PROPERTIES BUNDLE TRUE) #add_library(project1 SHARED ${src}) #編譯為程式資源包 *.framework #set_target_properties(project1 PROPERTIES FRAMEWORK TRUE)
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g -ggdb") # Debug模式下的編譯指令 SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall") # Release模式下的編譯指令 #SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../bin) #設定可執行檔案的輸出目錄 #SET(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../lib) #設定庫檔案的輸出目錄
#set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${PROJECT_SOURCE_DIR}/bin) #set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${PROJECT_SOURCE_DIR}/../bin) #上面兩條語句分別設定了Debug版本和Release版本可執行檔案的輸出目錄, #一旦設定上面的屬性,在任何環境下生成的可執行檔案都將直接放在你所設定的目錄. #四. set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${PROJECT_SOURCE_DIR}/../lib) # set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${PROJECT_SOURCE_DIR}/../lib) #上面兩條語句分別設定了Debug版本和Release版本庫檔案的輸出目錄, #一旦設定上面的屬性,在任何環境下生成的庫檔案都將直接放在你所設定的目錄.