Build 使用ExternalProject生成错误
两天前,我添加了一个外部项目来使用autotools编译一个项目。直到今天,它一直工作得很好 我有一个奇怪的错误: CMake错误在 /usr/share/cmake-2.8/Modules/ExternalProject.cmake:710(消息):错误:无下载信息 对于“libantlr3c”-请指定现有源目录或URL、CVS_存储库和CVS_模块、SVN_存储库或下载_命令中的一个 实际上指定了其中一个规则(SOURCE_DIR): 所以这个错误没有任何意义。。。昨天它工作得很好(到现在为止没有任何变化) 有什么想法吗Build 使用ExternalProject生成错误,build,cmake,build-process,autotools,external-project,Build,Cmake,Build Process,Autotools,External Project,两天前,我添加了一个外部项目来使用autotools编译一个项目。直到今天,它一直工作得很好 我有一个奇怪的错误: CMake错误在 /usr/share/cmake-2.8/Modules/ExternalProject.cmake:710(消息):错误:无下载信息 对于“libantlr3c”-请指定现有源目录或URL、CVS_存储库和CVS_模块、SVN_存储库或下载_命令中的一个 实际上指定了其中一个规则(SOURCE_DIR): 所以这个错误没有任何意义。。。昨天它工作得很好(到现在为
谢谢大家! 这是2.8.0版本的错误。安装2.8.3版或更高版本…即使是2.8.6版,我也遇到了类似的问题,文档也没有多大帮助。我在网上找到了一个例子,给了我需要的提示 您需要使用URL参数,但有一个问题。如果只给它direcotry的路径,它会假定您将它指向一个存档,而不是一个目录。您必须在路径前面加上“file://”,例如:
ExternalProject_Add(
libantlr3c
URL file://${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3/configure --prefix=${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
BUILD_COMMAND make
BUILD_IN_SOURCE 1
)
现在我只需要弄清楚(在我的项目中)为什么它在不存在的情况下寻找-mkdir
ExternalProject_Add(
libantlr3c
URL file://${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3/configure --prefix=${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3
BUILD_COMMAND make
BUILD_IN_SOURCE 1
)