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

update pyodide-build version #4285

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

linuxrider
Copy link

This minimal change should allow building for latest pyodide.
The culprit was the export option pyinit. Changing it to whole_archive solves it for me.
I do not know what the implications of this change are.
https://pyodide.org/en/stable/development/meta-yaml.html#build-exports
Thanks to @ryanking13 for the hint in pyodide/pyodide#5111.

Copy link
Contributor

github-actions bot commented Feb 11, 2025

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@linuxrider
Copy link
Author

I have read the CLA Document and I hereby sign the CLA

@linuxrider
Copy link
Author

recheck

github-actions bot added a commit that referenced this pull request Feb 11, 2025
@ryanking13
Copy link

Copying my response at pyodide/pyodide#5111.

Changing to --export whole_archive means that the library will expose all the symbols to the public, which will increase the output size and memory usage a bit. I think it won't be a very big deal for most of the libraries, but FYI.

By default (--export pyinit), the pyodide will only export symbols that start with PyInit, which Python C-Extension libraries would need to expose. But in the PyMuPDF case, it was building the shared library libmupdf.so as well in the build script. Since libmupdf.so itself is not a C-Extension Python library, nothing was exposed, hence the empty output.

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.

2 participants