Yeah, HPX changed build dependencies without warning, these are now fixed.  
You'll need to add an extra option to the HPX config to pull the latest from 
APEX:

-DHPX_WITH_APEX_NO_UPDATE=FALSE -DHPX_WITH_APEX_TAG=develop

Thanks -
Kevin

> On Jun 4, 2019, at 1:24 AM, Biddiscombe, John A. <biddi...@cscs.ch> wrote:
> 
>> 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
> 

--
Kevin Huck, PhD
Research Associate / Computer Scientist
OACISS - Oregon Advanced Computing Institute for Science and Society
University of Oregon
kh...@cs.uoregon.edu
http://tau.uoregon.edu







_______________________________________________
hpx-users mailing list
hpx-users@stellar.cct.lsu.edu
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users

Reply via email to