FEniCS / basix

FEniCSx finite element basis evaluation library
https://fenicsproject.org
MIT License
82 stars 32 forks source link

`ERROR: Could not build wheels for fenics-basix` : pyproject.toml issue #556

Closed lamia28 closed 2 years ago

lamia28 commented 2 years ago

Hi, I wanted to upgrade fenicsx but I meet an issue at the 'pip install' stage of basix package. I tried all the version from 0.3.0 to 0.4.2, and tried different versions of python. But I always meet the following issue : `Building wheels for collected packages: fenics-basix Building wheel for fenics-basix (pyproject.toml) ... error error: subprocess-exited-with-error

× Building wheel for fenics-basix (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [103 lines of output] Not searching for unused variables given on the command line. CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. -- Configuring incomplete, errors occurred! See also "/stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_cmake_test_compile/build/CMakeFiles/CMakeOutput.log". Not searching for unused variables given on the command line. -- The C compiler identification is Intel 17.0.4.20170411 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /opt/tools/intel/studio/2017/compilers_and_libraries_2017.4.196/linux/bin/intel64/icc - skipped -- Detecting C compile features -- Detecting C compile features - done -- The CXX compiler identification is Intel 17.0.4.20170411 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /opt/tools/intel/studio/2017/compilers_and_libraries_2017.4.196/linux/bin/intel64/icpc - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Configuring done -- Generating done -- Build files have been written to: /stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_cmake_test_compile/build Downloading xtl source... -- xtl v0.7.4 Downloading xtensor source... -- Building xtensor v0.24.1 -- Found xtl v0.7.4 -- Looking for C++ include pthread.h CMake Error in /stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_skbuild/linux-x86_64-3.9/cmake-build/CMakeFiles/CMakeTmp/CMakeLists.txt: Target "cmTC_9c94e" requires the language dialect "CXX17" , but CMake does not know the compile flags to use to enable it.

  CMake Error at /tmp/pip-build-env-ipzi4w5g/overlay/lib/python3.9/site-packages/cmake/data/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake:94 (try_compile):
    Failed to generate test project build system.
  Call Stack (most recent call first):
    /tmp/pip-build-env-ipzi4w5g/overlay/lib/python3.9/site-packages/cmake/data/share/cmake-3.22/Modules/FindThreads.cmake:148 (CHECK_INCLUDE_FILE_CXX)
    /tmp/pip-build-env-ipzi4w5g/overlay/lib/python3.9/site-packages/cmake/data/share/cmake-3.22/Modules/FindBLAS.cmake:456 (find_package)
    cpp/CMakeLists.txt:66 (find_package)

  -- Configuring incomplete, errors occurred!
  See also "/stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_skbuild/linux-x86_64-3.9/cmake-build/CMakeFiles/CMakeOutput.log".
    File "/tmp/pip-build-env-ipzi4w5g/overlay/lib/python3.9/site-packages/skbuild/setuptools_wrap.py", line 637, in setup
      env = cmkr.configure(
    File "/tmp/pip-build-env-ipzi4w5g/overlay/lib/python3.9/site-packages/skbuild/cmaker.py", line 328, in configure
      raise SKBuildError(

  --------------------------------------------------------------------------------
  -- Trying "Ninja" generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying "Ninja" generator - failure
  --------------------------------------------------------------------------------

  --------------------------------------------------------------------------------
  -- Trying "Unix Makefiles" generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying "Unix Makefiles" generator - success
  --------------------------------------------------------------------------------

  Configuring Project
    Working directory:
      /stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_skbuild/linux-x86_64-3.9/cmake-build
    Command:
      cmake /stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1 -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX:PATH=/stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_skbuild/linux-x86_64-3.9/cmake-install/python/basix -DPYTHON_VERSION_STRING:STRING=3.9.10 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/tmp/pip-build-env-ipzi4w5g/overlay/lib/python3.9/site-packages/skbuild/resources/cmake -DPython3_EXECUTABLE:FILEPATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPython3_INCLUDE_DIR:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DPython3_LIBRARY:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/libpython3.9.so -DPython_EXECUTABLE:FILEPATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPython_INCLUDE_DIR:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DPython_LIBRARY:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/libpython3.9.so -DPYTHON_EXECUTABLE:FILEPATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPYTHON_INCLUDE_DIR:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DPYTHON_LIBRARY:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/libpython3.9.so -DPython3_EXECUTABLE=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPython3_LIBRARIES=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/python3.9 -DPython3_INCLUDE_DIRS=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DDOWNLOAD_XTENSOR_LIBS=ON -DCMAKE_BUILD_TYPE:STRING=Release

  Traceback (most recent call last):

  An error occurred while configuring with CMake.
    Command:
      cmake /stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1 -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX:PATH=/stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_skbuild/linux-x86_64-3.9/cmake-install/python/basix -DPYTHON_VERSION_STRING:STRING=3.9.10 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/tmp/pip-build-env-ipzi4w5g/overlay/lib/python3.9/site-packages/skbuild/resources/cmake -DPython3_EXECUTABLE:FILEPATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPython3_INCLUDE_DIR:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DPython3_LIBRARY:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/libpython3.9.so -DPython_EXECUTABLE:FILEPATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPython_INCLUDE_DIR:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DPython_LIBRARY:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/libpython3.9.so -DPYTHON_EXECUTABLE:FILEPATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPYTHON_INCLUDE_DIR:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DPYTHON_LIBRARY:PATH=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/libpython3.9.so -DPython3_EXECUTABLE=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/bin/python3.9 -DPython3_LIBRARIES=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/lib/python3.9 -DPython3_INCLUDE_DIRS=/stck/lmersel/CODE_PROGRAMME/anaconda3/envs/fenics-dlfx/include/python3.9 -DDOWNLOAD_XTENSOR_LIBS=ON -DCMAKE_BUILD_TYPE:STRING=Release
    Source directory:
      /stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1
    Working directory:
      /stck/lmersel/CODE_PROGRAMME/FEniCSx/basix-0.4.1/_skbuild/linux-x86_64-3.9/cmake-build
  Please see CMake's output for more information.
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for fenics-basix Failed to build fenics-basix ERROR: Could not build wheels for fenics-basix, which is required to install pyproject.toml-based projects `

It seems to be a pip issue but even in upgrade or downgrade, the error remains. Do you have any idea how to fixe it ? Thanks for your help !

Lamia

garth-wells commented 2 years ago

We don't support the legacy Intel compilers, and the compiler version you're using is rather old and doesn't appear to support C++17.

The Intel legacy compilers have too many bugs and have been deprecated by Intel, which is why we don't support them.