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

Building a statically linked libyaml into PyYAML wheel #303

Closed
shakefu opened this issue Jun 5, 2019 · 4 comments
Closed

Building a statically linked libyaml into PyYAML wheel #303

shakefu opened this issue Jun 5, 2019 · 4 comments

Comments

@shakefu
Copy link

shakefu commented Jun 5, 2019

I'm trying to build a PyYAML wheel that leverages libyaml without having to install libyaml as a system shared library for all the services we use. We do have control of the runtime environment (via containers) so we are able to target a fixed version of libyaml/gcc/etc.

Is there any way using the existing build toolchain to set it up so that libyaml should be statically linked instead of dynamically linked and included with the C extension distribution in the binary wheel?

@ssbarnea
Copy link

I totally susbscribe to this as the warning which I seen recently worries me:

WARNING: PyYAML will be slow due to installation without libyaml support for interpreter:

It should be possible to build binary wheels for MacOS and Linux (manylinux).

Packaging binary would be huge benefits for lots of users.

@MRigal
Copy link

MRigal commented Sep 16, 2019

See also #227

@etanol
Copy link

etanol commented Oct 3, 2020

Does this also include setup.py modifications to be able to build the extension statically linked to a custom built libyaml? Or should I open a different issue?

In my case, I can't find ways to control CFLAGS, LDFLAGS et al. Neither from pip nor from python setup.py

@nitzmahone
Copy link
Member

addressed in #407 in 5.4b1

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

No branches or pull requests

5 participants