oneapi-src / oneapi-src/oneAPI-samples

cmake does not recognize icpx as a valid compiler

Open
#1,343 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C++
Stars
1.2k
Forks
745
PR merge metrics
No merged PRs in 30d

Description

Summary

when running cmake configuration stage, I get the follwing error:

master) tcohen@tcohen:build $ cmake ..
-- The CXX compiler identification is IntelLLVM 2023.0.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - failed
-- Check for working CXX compiler: /opt/intel/oneapi/compiler/2023.0.0/linux/bin/icpx
-- Check for working CXX compiler: /opt/intel/oneapi/compiler/2023.0.0/linux/bin/icpx - broken
CMake Error at /usr/share/cmake-3.22/Modules/CMakeTestCXXCompiler.cmake:62 (message):
The C++ compiler

"/opt/intel/oneapi/compiler/2023.0.0/linux/bin/icpx"

is not able to compile a simple test program.

It fails with the following output:

Change Dir: /home/tcohen/code/oneAPI-samples/DirectProgramming/C++SYCL/DenseLinearAlgebra/simple-add/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9dafe/fast && /usr/bin/gmake  -f CMakeFiles/cmTC_9dafe.dir/build.make CMakeFiles/cmTC_9dafe.dir/build
gmake[1]: Entering directory '/home/tcohen/code/oneAPI-samples/DirectProgramming/C++SYCL/DenseLinearAlgebra/simple-add/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_9dafe.dir/testCXXCompiler.cxx.o
/opt/intel/oneapi/compiler/2023.0.0/linux/bin/icpx    -MD -MT CMakeFiles/cmTC_9dafe.dir/testCXXCompiler.cxx.o -MF CMakeFiles/cmTC_9dafe.dir/testCXXCompiler.cxx.o.d -o CMakeFiles/cmTC_9dafe.dir/testCXXCompiler.cxx.o -c /home/tcohen/code/oneAPI-samples/DirectProgramming/C++SYCL/DenseLinearAlgebra/simple-add/build/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
Linking CXX executable cmTC_9dafe
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9dafe.dir/link.txt --verbose=1
/opt/intel/oneapi/compiler/2023.0.0/linux/bin/icpx CMakeFiles/cmTC_9dafe.dir/testCXXCompiler.cxx.o -o cmTC_9dafe 
/usr/bin/ld: cannot find -lstdc++: No such file or directory
icpx: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[1]: *** [CMakeFiles/cmTC_9dafe.dir/build.make:100: cmTC_9dafe] Error 1
gmake[1]: Leaving directory '/home/tcohen/code/oneAPI-samples/DirectProgramming/C++SYCL/DenseLinearAlgebra/simple-add/build/CMakeFiles/CMakeTmp'
gmake: *** [Makefile:127: cmTC_9dafe/fast] Error 2

CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt:14 (project)

-- Configuring incomplete, errors occurred!

Version

Latest OneAPI toolkit and samples.

Environment

Ubuntu 22.04

Steps to reproduce

Install Tools kit according to Intel instructions:
https://www.intel.com/content/www/us/en/developer/tools/oneapi/base-toolkit-download.html?operatingsystem=linux&distributions=aptpackagemanager

Download the samples and run cmake config stage.

Observed behavior

cmake config stage fails

Expected behavior

came config stage is successful.

Contributor guide

Open the contributing guide

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

Start with the CMakeLists.txt project call at line 14 and reproduce the configuration using icpx on Ubuntu 22.04. Inspect CMake's compiler test output, including CMakeTestCXXCompiler.cmake and the missing -lstdc++ error, to determine why this compiler setup fails. Done means the sample's CMake configuration completes successfully with the documented oneAPI installation.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.