考虑以下情况:我想通过ExternalProject_Add
. 我想构建发布和调试库。我的计划是先构建发布库,然后重用下载的源代码来构建调试库。我不想下载源代码两次。我的 CMakeLists.txt 中的相关部分如下所示:
ExternalProject_Add(
installSFMLRelease
PREFIX ${TMPDIR}
DOWNLOAD_DIR ${TMPDIR}/SFML
GIT_REPOSITORY git://github.com/LaurentGomila/SFML.git
GIT_TAG 2.0
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${SFML_INSTALL_PREFIX}
CMAKE_GENERATOR ${CMAKE_GENERATOR}
UPDATE_COMMAND "")
ExternalProject_Add(
installSFMLDebugAndDocs
DEPENDS installSFMLRelease
URL file://${TMPDIR}/SFML
SOURCE_DIR ${TMPDIR}/SFML
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${SFML_INSTALL_PREFIX} -DCMAKE_BUILD_TYPE:STRING=Debug -DSFML_BUILD_DOC:BOOL=TRUE)
你猜怎么着?它不起作用。CMake 失败
3>CUSTOMBUILD : CMake error : The source directory "C:/Windows/Temp/SFML" does not appear to contain CMakeLists.txt.
这里的问题是,该目录实际上不包含任何内容,因为installSFMLRelease
之前没有运行过。我怎样才能得到DEPENDS
正确的 - 部分?