cpm-cmake / CPM.cmake

📦 CMake's missing package manager. A small CMake script for setup-free, cross-platform, reproducible dependency management.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CPM call to FetchContent_Populate freezes build sequence

FoxRLY opened this issue · comments

Tried using CPM to add Boost, done everything according to the example and build generation just freezes when CPM calls FetchContent_Populate. Don't think it's the problem with my internet as boost-src folder in _deps is exactly the same as on github boost repository. What 's odd is that boost-subbuild folder doesn't contain built library and boost-build is empty.

Using cmake with Ninja, no processor activity is seen when freezes - most likely means no work is being done

/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(786):  if(CPM_PACKAGE_LOCK_ENABLED )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(796):  cpm_message(STATUS ${CPM_INDENT} Adding package ${CPM_ARGS_NAME}@${CPM_ARGS_VERSION} (${PACKAGE_INFO}) )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(41):  message(${ARGV} )
-- CPM: Adding package Boost@1.83.0 (boost-1.83.0)
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(800):  if(NOT CPM_SKIP_FETCH )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(801):  cpm_declare_fetch(${CPM_ARGS_NAME} ${CPM_ARGS_VERSION} ${PACKAGE_INFO} ${CPM_ARGS_UNPARSED_ARGUMENTS} )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(920):  if(${CPM_DRY_RUN} )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(925):  FetchContent_Declare(${PACKAGE} ${ARGN} )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(804):  cpm_fetch_package(${CPM_ARGS_NAME} populated )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(996):  set(${populated} FALSE PARENT_SCOPE )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(1000):  if(${CPM_DRY_RUN} )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(1005):  FetchContent_GetProperties(${PACKAGE} )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(1007):  string(TOLOWER ${PACKAGE} lower_case_name )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(1009):  if(NOT ${lower_case_name}_POPULATED )
/home/foxrly/WORK/cpp-project/cpm_script/CPM.cmake(1010):  FetchContent_Populate(${PACKAGE} )

It could be that while the main repo is cloned, it's still not done cloning all the submodules. This may take a while as the boost project is extremely extensive. Alternatively, you could try downloading the release archive instead, which should be significantly faster. See #531 on how to do this.

Well, would be great indeed if this information was added to the examples