FEniCS/basix

An issue happens during installing the wheel generated in 0.8.0

Closed this issue · 3 comments

Hi, I noticed an issue with the wheel generated is not installable I dunno is from side from build or installer or with new backend scikit-build-core.

Wheel: fenics_basix-0.8.0-cp311-cp311-manylinux_2_39_x86_64.whl.zip
OS: Arch Linux with the following dependencies:

asciicast

I started our wheel build process this morning - if there are issues with those I'll make a .post0 release.

Our relocatable wheel builds are working https://github.com/FEniCS/basix/actions/runs/8829349156/job/24240171499

Are you making your wheels from the root directory? That will build the C++ part and the Python part in one shot. We don't plan to support making relocatable wheels from the split cpp/ python/ install method.

Thanks for feedback. Right, since basix-0.4.2.post1 until basix-0.7.0.post0 was working in two separate steps. First install, C++ headers and share object.

/usr/include/basix/cell.h
/usr/include/basix/dof-transformations.h
/usr/include/basix/e-brezzi-douglas-marini.h
/usr/include/basix/e-bubble.h
/usr/include/basix/e-crouzeix-raviart.h
/usr/include/basix/e-hermite.h
/usr/include/basix/e-hhj.h
/usr/include/basix/e-lagrange.h
/usr/include/basix/e-nce-rtc.h
/usr/include/basix/e-nedelec.h
/usr/include/basix/e-raviart-thomas.h
/usr/include/basix/e-regge.h
/usr/include/basix/e-serendipity.h
/usr/include/basix/element-families.h
/usr/include/basix/finite-element.h
/usr/include/basix/indexing.h
/usr/include/basix/interpolation.h
/usr/include/basix/lattice.h
/usr/include/basix/maps.h
/usr/include/basix/math.h
/usr/include/basix/mdspan.hpp
/usr/include/basix/moments.h
/usr/include/basix/polynomials.h
/usr/include/basix/polyset.h
/usr/include/basix/precompute.h
/usr/include/basix/quadrature.h
/usr/include/basix/sobolev-spaces.h
/usr/include/basix/version.h
/usr/include/finite-element.h
/usr/lib/cmake/basix/BasixConfig.cmake
/usr/lib/cmake/basix/BasixConfigVersion.cmake
/usr/lib/cmake/basix/BasixTargets-none.cmake
/usr/lib/cmake/basix/BasixTargets.cmake
/usr/lib/libbasix.so
/usr/share/licenses/basix/LICENSE

Second, python/CMakeLists.txt setup find_package(Basix REQUIRED) and start creating _basixcpp.cpython-311-x86_64-linux-gnu.so.

I noticed (not sure) that even when nanobind was system-wide installed and detected by cmake, but is compiled statically and takes a little seconds longer.

Now, the installation is successfully with a harmless warning.

2024-04-25 16:37:38,832 - scikit_build_core - WARNING - No license files found, set wheel.license-files to [] to suppress this warning