[問題] VS2017和cmake 執行檔輸出位置問題

作者: clh960524 (CLH)   2018-02-26 16:05:24
開發平台(Platform): (Ex: Win10, Linux, ...)
Win7
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
Visual Studio 2017 IDE (Visual Studio 15.5)
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)

問題(Question):
最近在使用VS2017裡面的CMake功能
在程式build完成之後
發現VS會把build出來的binary放到我安裝CMake安裝位置裡的CMakeBuilds資料夾
想請問一下VS2017的CMake功能可不可以指定binary的輸出位置
餵入的資料(Input):
CMakeLists.txt
詳細內容在"程式碼"段落
預期的正確結果(Expected Output):
binary會出現在目前project的根目錄
錯誤結果(Wrong Output):
binary會出現在CMake安裝位置裡的CMakeBuilds資料夾
程式碼(Code):(請善用置底文網頁, 記得排版)
https://gist.github.com/Cuda-Chen/301e24154e1e936c6a90cc2a90529b71
CMakeLists.txt 文字好讀版:
# CMake minimum version requirment
cmake_minimum_required(VERSION 2.8)
# executable name
project(sobel_mfnn)
# set executable output path
#set(EXECUTABLE_OUTPUT_PATH "..")
set(CMAKE_BUILD_TYPE Debug)
set(SRCS
main.cpp
)
add_executable(sobel_mfnn ${SRCS})
補充說明(Supplement):
作者: eye5002003 (下一夜)   2018-02-27 22:36:00
EXECUTABLE_OUTPUT_PATH是比較舊的東西set(CMAKE_RUNTIME_OUTPUT_DIRECTORY${PROJECT_SOURCE_DIR})set(CMAKE_LIBRARY_OUTPUT_DIRECTORY 略set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY 略用這三行指定編譯結果要放哪裡吧,通常沒人像你一樣丟到專案資料夾裡面,而是丟到生成物專屬的地方因此會用PROJECT_BINARY_DIR取代PROJECT_SOURCE_DIR等一下,你用的是VS,所以比較囉嗦,我用回文說明好了

Links booklink

Contact Us: admin [ a t ] ucptt.com