我最近开始在我的一个多平台项目中使用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,它添加了所有子目录.如果有什么不合理的话就随便问一下.
你也可以用这个:
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)