将标题/库/可执行文件移动到特定目录

Adm*_*onB 1 cmake

我最近开始在我的一个多平台项目中使用CMake,但我在弄清楚如何做某事时遇到了一些麻烦.

基本上,在项目内部我有多个库和可执行文件,都在他们自己的文件夹中.我想将所有已编译的库放在构建的一个目录中,即CMake构建文件夹中的lib文件夹.我想为可执行文件做同样的事情.

CMake Build Directory

| ----------> bin (where i want the executables to go)

| ----------> lib (where i want the libraries to go)

| ----------> utils (where the libraries are ordinarily compiled)

| ----------> test (where the executables are ordinarily compiled)
Run Code Online (Sandbox Code Playgroud)

在utils和apps中有一些目录,用于我正在制作的所有不同的库和可执行文件.我的源目录的基本文件夹中有一个CMakeLists,它添加​​了所有子目录.如果有什么不合理的话就随便问一下.

arr*_*owd 5

你也可以用这个:

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