设置CLion构建和二进制目录

Huh*_*wha 5 cmake libwebsockets clion

我正在尝试在我的项目中在CLion中构建libwebsockets.在构建期间,libwebsockets会创建其他文件所需的头文件,并将其放在PROJECT_BINARY_DIR中.CLion在为项目创建的随机构建目录中构建所有内容,并且头文件最终在该目录中.我试过了:

  • 设置websockets_BINARY_DIR变量
  • 设置CMAKE_RUNTIME_OUTPUT_DIRECTORY变量
  • 设置CMAKE_LIBRARY_OUTPUT_DIRECTORY变量
  • 更改CMake缓存中的每个变量以指向远离CLion的随机目录
  • 在CLion的首选项中更改构建输出路径设置

这些都不起作用,这引出了我的问题:

  • 有没有办法告诉CLion在哪里构建(不仅仅是在哪里放置一些输出但是如何覆盖它选择的随机目录).
  • 如果没有办法告诉CLion在哪里构建,那么我应该设置另一个变量吗?

Mak*_*aks 9

我不知道如何设置构建目录.

有关如何使用Clion设置bin目录的示例

set(dir ${CMAKE_CURRENT_SOURCE_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${dir}/bin")
Run Code Online (Sandbox Code Playgroud)

或(单独用于.exe,.dll,.lib):

set(dir ${CMAKE_CURRENT_SOURCE_DIR})
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${dir}/lib")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${dir}/lib")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${dir}/bin")
Run Code Online (Sandbox Code Playgroud)

我还添加了有关如何设置构建目录的链接:https: //stackoverflow.com/a/28200869/3001953

但它在我的情况下不起作用(Clion 1.1).