STEllAR-GROUP / hpx

The C++ Standard Library for Parallelism and Concurrency
https://hpx.stellar-group.org
Boost Software License 1.0
2.51k stars 427 forks source link

configuring with APEX and CUDA/CUPTI support results in CMake issues #5706

Open khuck opened 2 years ago

khuck commented 2 years ago

Expected Behavior

successful configuration

Actual Behavior

The cmake command results in:

-- Configuring done
CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/lib/pkgconfig/hpx_application_relwithdebinfo.pc

CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/lib/pkgconfig/hpx_application.pc

CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/CMakeFiles/hpx_application_relwithdebinfo.pc

CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/CMakeFiles/hpx_application.pc

CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/lib/pkgconfig/hpx_component_relwithdebinfo.pc

CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/lib/pkgconfig/hpx_component.pc

CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/CMakeFiles/hpx_component_relwithdebinfo.pc

CMake Error in CMakeLists.txt:
  Evaluation file to be written multiple times with different content.  This
  is generally caused by the content evaluating the configuration type,
  language, or location of object files:

   /scratch/khuck/hpx/build/CMakeFiles/hpx_component.pc

-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.

Steps to Reproduce the Problem

... Please be as specific as possible while describing how to reproduce your problem.

  1. configure with: cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/scratch/khuck/hpx/install -DHPX_WITH_MALLOC=tcmalloc -DHPX_WITH_APEX=TRUE -DHPX_WITH_APEX_NO_UPDATE=TRUE -DHPX_WITH_FETCH_ASIO=ON -DAPEX_WITH_CUDA=TRUE -DBOOST_ROOT=/usr/local/packages/boost/1.75.0 -DHWLOC_ROOT=/usr/local/packages/hwloc/2.4.0 -DTCMALLOC_ROOT=/usr/local/packages/gperftools/2.8.1 -DHPX_WITH_APEX_TAG=develop /scratch/khuck/hpx/src
  2. Only seems to happen when APEX_WITH_CUDA is set to "TRUE".

Specifications

... Please describe your environment

msimberg commented 2 years ago

I think this is wontfix at least from my perspective. This is a problem that we can't fix at the moment because of certain behaviours of CMake's generator expressions (a CMake version bump may allow us to fix it by now, but I have not checked).

Assuming you don't rely on the pkgconfig file generation, could you try if the problem goes away with HPX_WITH_PKGCONFIG=OFF? That is what triggers this problem. We already disable pkgconfig file generation by default if HPX_WITH_CUDA is enabled because of the same problem.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.