Skip to content

Unable to use NumbaMinpack on Fedora 42 #10

@ProbitJK

Description

@ProbitJK

Summary

I previously used NumbaMinpack on Fedora 34 with Python 3.11 without any issues. After upgrading to Fedora 42, I am unable to install or import the package successfully on a clean system with Python 3.13.


Environment

  • OS: Fedora 42 (fresh install)
  • Python: 3.13 (inside a clean virtualenv)
  • Packages:
    • cmake: 3.31.6
    • llvmlite: 0.44.0
    • numba: 0.61.2
    • numpy: 2.2.6
    • packaging: 25.0
    • scikit-build: 0.18.1
    • setuptools: 80.9.0
    • wheel: 0.45.1

Steps to Reproduce

  1. Create a fresh Python 3.13 virtual environment.
  2. Install required dependencies (listed above)
  3. Run:
pip install NumbaMinpack

Problem encountered

  • The build fails with a CMake configuration error:
  CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
    Compatibility with CMake < 3.10 will be removed from a future version of
    CMake.
...
  CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
    Compatibility with CMake < 3.5 has been removed from CMake.
...
  An error occurred while configuring with CMake.
    Command:
      /tmp/pip-build-env-0c0w1llb/overlay/lib64/python3.13/site-packages/cmake/data/bin/cmake /tmp/pip-install-6svpjrw2/numbaminpack_6c843040739d4851ab386035fd4601c7 -G Ninja -DCMAKE_MAKE_PROGRAM:FILEPATH=ninja --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pip-install-6svpjrw2/numbaminpack_6c843040739d4851ab386035fd4601c7/_skbuild/linux-x86_64-3.13/cmake-install -DPYTHON_VERSION_STRING:STRING=3.13.5 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/tmp/pip-build-env-0c0w1llb/overlay/lib/python3.13/site-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/home/probitjk/.virtualenvs/general/bin/python -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.13 -DPYTHON_LIBRARY:PATH=/usr/lib64/libpython3.13.so -DPython_EXECUTABLE:PATH=/home/probitjk/.virtualenvs/general/bin/python -DPython_ROOT_DIR:PATH=/home/probitjk/.virtualenvs/general -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.13 -DPython3_EXECUTABLE:PATH=/home/probitjk/.virtualenvs/general/bin/python -DPython3_ROOT_DIR:PATH=/home/probitjk/.virtualenvs/general -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.13 -DCMAKE_MAKE_PROGRAM:FILEPATH=ninja -DSKBUILD=ON -DCMAKE_BUILD_TYPE:STRING=Release
    Source directory:
      /tmp/pip-install-6svpjrw2/numbaminpack_6c843040739d4851ab386035fd4601c7
    Working directory:
      /tmp/pip-install-6svpjrw2/numbaminpack_6c843040739d4851ab386035fd4601c7/_skbuild/linux-x86_64-3.13/cmake-build
  Please see CMake's output for more information.
  • The build failure was bypassed by installing with:
pip install --no-build-isolation NumbaMinpack

which leads to successful installation

  • However importing the package using python -c "import NumbaMinpack" results in:
OSError: /home/probitjk/.virtualenvs/general/lib/python3.13/site-packages/NumbaMinpack/libminpack.so: cannot enable executable stack as shared object requires: Invalid argument
  • Using execstack -c <path/to/installed/.so/file> (as suggested for similar issues on StackOverflow) allows for the package to get imported, but any call to lmdif or hybrd (following the example in README) causes an immediate segmentation fault.

Installing from source

  • Using pip install -e . fails with the same CMake configuration error.
  • Adding --no-build-isolation to the install command leads to successful installation, but produces the same OSError when imported. Patching with execstack -c leads to segmentation fault again.

I rely heavily on NumbaMinpack and would appreciate any pointers on how to get it working on the Fedora 42 + Python 3.13 setup.
I can test potential fixes and provide additional logs if required.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions