我想使用 CMake 中的 ExternalProject_Add 来构建 ParMETIS,但在构建过程中出现错误。
我已经成功地使用此功能构建了其他库,而没有太多问题。我已经尝试过 CMake 版本 3.10.2、3.10.3 和 3.11.1 都给出了相同的错误。
cmake_minimum_required(VERSION 3.10.2)
include(ExternalProject)
set(LIB_EXT ${CMAKE_CURRENT_SOURCE_DIR}/../external)
set(BUILD_EXT ${LIB_EXT}/builds)
set(PARMETIS_ROOT ${BUILD_EXT}/parmetis)
ExternalProject_Add(external_parmetis
URL http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz
URL_HASH SHA256=f2d9a231b7cf97f1fee6e8c9663113ebf6c240d407d3c118c55b3633d6be6e5f
PREFIX ${PARMETIS_ROOT}
SOURCE_DIR ${LIB_EXT}/parmetis-4.0.3
BUILD_IN_SOURCE ON
DOWNLOAD_DIR ${LIB_EXT}
CONFIGURE_COMMAND make config
BUILD_COMMAND make
INSTALL_COMMAND ""
)
配置步骤有效,但是在构建所有目标之后,我得到一个错误。我不认为这个“s”目标是一个真正的目标。
[100%] Built target pometis
make[5]: *** No rule to make target `s'. Stop.
make[4]: *** [all] Error 2