假设有以下目录结构:
root
|
+--projects
| |
| +-test
| |
| +-CMakeFiles.txt
|
+--libs
|
+-testlib
|
+-CMakeFiles.txt
test
包含CMakeFiles.txt
并且testlib
还包含CMakeFiles.txt
。“test”产生一个可执行文件,“testlib”产生一个静态库。
我希望“test”与“testlib”链接而不使用符号链接,也不需要将“testlib”库移动到“test”中的子目录中。
因为“testlib”不是“test”的子目录,所以我做不到
add_subdirectory("../../libs/testlib")
在测试中CMakeFiles.txt
- CMake 会抱怨“testlib”不在“test”子目录中。
另外,因为系统有几个不同的编译器,我不能简单地将“testlib”库安装到某种中央目录中,所以我想test
编译它的本地副本testlib
并与之链接(即好像testlib
是一个子目录)。我还希望“test”项目在更改后自动重建“testlib”。
那么,我该如何处理呢?我在 Windows XP SP3 上使用 CMake 2.8.4。