[英]Why EXECUTABLE_OUTPUT_PATH does not work?
我有這樣的文件
.
├── CMakeLists.txt
└── src
├── CMakeLists.txt
└── main.c
這是關於這個文件的內容
$ cat CMakeLists.txt
cmake_minimum_required(VERSION 3.5)
PROJECT (HELLO)
ADD_SUBDIRECTORY(src bin)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/binarydir)
$ cat src/CMakeLists.txt
ADD_EXECUTABLE(hello main.c)
$ cat src/main.c
#include <stdio.h>
int main()
{
printf("Hello World from t1 main().\n");
return 0;
}
然后我使用以下命令構建它
$ mkdir build
$ cd build
$ cmake ..
$ make
這是結果目錄結構
然后二進制hello
將在目錄build/bin
成為圖片,但它應該在build/binarydir
因為我已經set
了EXECUTABLE_OUTPUT_PATH
的值,不是嗎? 我錯過了什么?
您正在設置EXECUTABLE_OUTPUT_PATH
之前創建可執行目標。 在ADD_SUBDIRECTORY(src bin)
之前移動SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/binarydir)
行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.