>I use the FetchContent module to integrate HPX into my project, which means my >project is the main project. I think some paths in APEX' CMakeLists.hpx need >to be adjusted, which I have done locally. Once I have the whole build working >I can provide a patch or pull request with my edits.
Please do submit a PR (to the APEX repo though if it needs fixes) - I thought I had fixed all those ages ago, but I guess some new ones have crept in. >>> Second, my build of HPX with support for APEX almost succeeds, but not completely (repro-case at bottom of this message): <<< My local projects that build using HPX are also failing with the similar problems related to hpx_cache and also hpx/config.hpp include directory problems. Can you confirm if you are using master branch, or a 1.3 release - the cache stuff was not present in the 1.3 release. Thanks JB /usr/bin/ld: cannot find -lhpx_cache collect2: error: ld returned 1 exit status _deps/hpx-build/src/CMakeFiles/hpx.dir/build.make:2769: recipe for target 'lib/libhpx.so.1.3.0' failed make[2]: *** [lib/libhpx.so.1.3.0] Error 1 CMakeFiles/Makefile2:1112: recipe for target '_deps/hpx-build/src/CMakeFiles/hpx.dir/all' failed Building with HPX_WITH_APEX=OFF succeeds, building with HPX_WITH_APEX=ON fails for lack of hpx_cache. I cannot find any reference to the hpx_cache library in the HPX and APEX sources. It is mentioned in three files in HPX' build directory, though: ./CMakeFiles/Export/lib/cmake/HPX/HPXTargets.cmake ./lib/cmake/HPX/HPXTargets.cmake ./src/CMakeFiles/hpx.dir/link.txt The CMake scripts contain this snippet: set_target_properties(apex PROPERTIES INTERFACE_COMPILE_OPTIONS "-std=c++17" INTERFACE_LINK_LIBRARIES "hpx_cache" ) Does anyone know how I can make my build succeed? Thanks! Kor The simplest CMakeLists.txt with which I can recreate the issue is this one: # dummy/CMakeLists.txt cmake_minimum_required(VERSION 3.12) project(dummy LANGUAGES CXX) include(FetchContent) set(HPX_WITH_EXAMPLES OFF CACHE BOOL "") set(HPX_WITH_TESTS OFF CACHE BOOL "") set(HPX_WITH_APEX ON CACHE BOOL "") FetchContent_Declare(hpx GIT_REPOSITORY https://github.com/STEllAR-GROUP/hpx GIT_TAG 1.3.0 ) FetchContent_GetProperties(hpx) if(NOT hpx_POPULATED) FetchContent_Populate(hpx) if(HPX_WITH_APEX) # I think something like this should be done in # APEX' CMakeLists.hpx include_directories( ${hpx_SOURCE_DIR}/libs/preprocessor/include ${hpx_SOURCE_DIR}/apex/src/apex ${hpx_SOURCE_DIR}/apex/src/contrib) endif() add_subdirectory(${hpx_SOURCE_DIR} ${hpx_BINARY_DIR}) endif() # / dummy/CMakeLists.txt The project can be built (until the above link error) like this: mkdir dummy/build cd dummy/build cmake .. make _______________________________________________ hpx-users mailing list hpx-users@stellar.cct.lsu.edu https://mail.cct.lsu.edu/mailman/listinfo/hpx-users _______________________________________________ hpx-users mailing list hpx-users@stellar.cct.lsu.edu https://mail.cct.lsu.edu/mailman/listinfo/hpx-users