NVIDIA / NVIDIA/stdexec

_CMAKE_CUDA_WHOLE_FLAG issue

Open
#807 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
2.4k
Forks
270
Avg merge
3d 6h
Merged PRs (30d)
39

Description

I'm trying to point circle at the nvexec tests. This is what I'm getting:

$ cmake -DCMAKE_CXX_COMPILER=/usr/bin/circle -DCMAKE_CUDA_COMPILER=/usr/bin/circle -DSTDEXEC_ENABLE_CUDA=ON ..
-- The CXX compiler identification is Clang 5.0.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/circle - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- System           : Linux-5.4.0-137-generic
-- System name      : Linux
-- System ver       : 5.4.0-137-generic
-- 
-- Library ver      : 0.7.0
-- Build date       : 2023-03-09
-- Build year       : 2023
-- 
-- CPM: adding package Catch2@2.13.6 (2.13.6)
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- The CUDA compiler identification is unknown
-- Detecting CUDA compiler ABI info
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
_CMAKE_CUDA_WHOLE_FLAG
CMake Error at /usr/local/share/cmake-3.26/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile):
  Failed to generate test project build system.
Call Stack (most recent call first):
  /usr/local/share/cmake-3.26/Modules/CMakeTestCUDACompiler.cmake:19 (CMAKE_DETERMINE_COMPILER_ABI)
  CMakeLists.txt:222 (enable_language)


-- Configuring incomplete, errors occurred!

How do I force stdexec to use a different compiler as if it were nvc++?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the command with CMAKE_CXX_COMPILER and CMAKE_CUDA_COMPILER set to /usr/bin/circle. Start at CMakeLists.txt:222 and the CMakeDetermineCompilerABI.cmake and CMakeTestCUDACompiler.cmake paths shown in the error. Done means establishing a supported way to use the alternate compiler for the CUDA configuration, or documenting why it cannot be used.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system, compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.