CadQuery / ocp-build-system

A system to build Python wheel PyPI packages for OCP.
Apache License 2.0
6 stars 8 forks source link

OCP 7.7.1.x Support #15

Closed jmwright closed 11 months ago

jmwright commented 11 months ago

@fpq473 It looks like we're having glibc compatibility issues again.

https://github.com/CadQuery/ocp-build-system/actions/runs/5577613766/jobs/10190618029

fpq473 commented 11 months ago

@jmwright I think it's the issue described in https://github.com/CadQuery/ocp-build-system/issues/12#issuecomment-1464495930.

Basically, the conda-forge occt package is being built with a toolchain that is too new for manylinux_2_31. The last time we released 7.7.0, we had to pin the occt package to the build right before the toolchain was updated. I think all builds of occt 7.7.1 are with the new toolchain.

It might be possible to make manylinux_2_35 wheels (Fedora 36+, Ubuntu 22.04+) without much effort. The alternative is to set up a separate build of occt (like you did with vtk), but that might be a lot of work...

jmwright commented 11 months ago

@fpq473 I've built OCCT locally mutliple times before, so I think I can get it to build in CI. The part that I'm not sure about is getting it packaged into a wheel after it's built so that it can be installed in the environment. Binary wheel builds give me a lot of trouble.

fpq473 commented 11 months ago

@jmwright I see. Unfortunately, setup.py is hard-coded to run in a conda environment (e.g. specific location of libraries, license files), so yes, it is probably more work to adapt it to produce a manylinux wheel from a bespoke occt installation. (Possibly OCP would have to be built as well, and other dependencies.)

I'm not too engaged with OCP stuff right now (trying to transition to FreeCAD) so I can't offer much energy here. I should be around to explain what setup.py is doing though, in case that's helpful.

jmwright commented 11 months ago

@fpq473 I ended up increasing the manylinux version. Thanks!