Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add qhull and update matplotlib #1205

Merged
merged 7 commits into from
Jul 16, 2024
Merged

Conversation

wolfv
Copy link
Contributor

@wolfv wolfv commented Jul 14, 2024

Adding qhull seemed pretty easy.
Matplotlib - unfortunately - does not seem to work yet in Jupyterlite.

The error I am getting is:

LinkError: WebAssembly.instantiate(): Import #190 "env" "time": imported function does not match the expected type

@DerThorsten
Copy link
Contributor

often a missing -sWASM_BIGINT give erros like "imported function does not match the expected type" @wolfv

@ianthomas23
Copy link
Collaborator

From version 3.9.0 Matplotlib switched to using meson, and I think more changes are required here for this. For example, there is no setupext.py any more, and it probably needs a meson cross-compilation file (as other meson-using packages do here). I have a WIP branch https://github.com/emscripten-forge/recipes/tree/matplotlib_3.9.0 that builds but fails the tests (probably because the build is wrong), and you are welcome to take any of that to use here.

@wolfv
Copy link
Contributor Author

wolfv commented Jul 15, 2024

Thanks @DerThorsten - with WASM_BIGINT it seems to work like a charm (for the two things I tested at least). Screenshot attached.

Screenshot 2024-07-15 at 18 49 36

@wolfv
Copy link
Contributor Author

wolfv commented Jul 15, 2024

3D triangulation stuff also seems to work?!

Screenshot 2024-07-15 at 18 53 23

@DerThorsten
Copy link
Contributor

3D triangulation stuff also seems to work?!

Screenshot 2024-07-15 at 18 53 23

nice!
Is this ready for review/merging?

@wolfv
Copy link
Contributor Author

wolfv commented Jul 16, 2024

I think so! :)

@wolfv
Copy link
Contributor Author

wolfv commented Jul 16, 2024

Although I think it can be simplified some more ...

@wolfv wolfv force-pushed the qhull-matplotlib branch from 1e9a355 to 0f2fae4 Compare July 16, 2024 07:26
@wolfv wolfv force-pushed the qhull-matplotlib branch from 0f2fae4 to e1a25b0 Compare July 16, 2024 07:26
@wolfv
Copy link
Contributor Author

wolfv commented Jul 16, 2024

Ok, so I spent a little time on simplifications but it didn't completely pan out.

I tried to remove numpy and pybind11 from the build dependencies.

Instead we configure the location in the meson cross file.

But note: the cross-python package does some magic upon activation (it moves all headers and shared objects in the $BUILD_PREFIX). So the "final" location of the numpy include dir is still in the $BUILD_PREFIX).

@DerThorsten DerThorsten self-requested a review July 16, 2024 11:29
@wolfv wolfv merged commit 4ea2253 into emscripten-forge:main Jul 16, 2024
1 check passed
@wolfv wolfv deleted the qhull-matplotlib branch July 16, 2024 20:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants