我有自己的代码,它依赖于第三方库,例如 yaml-cpp。我想在编译我自己的源代码之前下载这些第三方库。但是,我无法使用 CMake 做到这一点。
我设法像这样下载 yaml-cpp:
ExternalProject_Add(yaml-cpp
URL https://yaml-cpp.googlecode.com/files/yaml-cpp-0.5.1.tar.gz
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/yaml-cpp
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
但是当我输入
cmake ..
make
我的资料是以前编译的。实际上,yaml-cpp 是在最后一步下载的。
您知道如何在构建的第一步告诉 CMake 下载第三方库吗?
谢谢!
最佳答案
ExternalProject
创建一个目标。您可以设定第一个目标,例如您的库,依赖于该目标。然后在您开始构建库之前下载它。
关于cmake - 如何在编译我的源之前告诉 CMake 下载外部项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28899681/