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

version `GLIBC_2.29' not found #142

Open
phelps-sg opened this issue Jul 29, 2024 · 1 comment
Open

version `GLIBC_2.29' not found #142

phelps-sg opened this issue Jul 29, 2024 · 1 comment

Comments

@phelps-sg
Copy link
Contributor

When installing Python dependency ironcore-alloy 0.11.0 via pip from within an amazon/aws-lambda-python:3.11 docker container I get the error below.

ERROR  - OSError: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /var/lang/lib/python3.11/site-packages/ironcore_alloy/libironcore_alloy.so)

I think for maximum portability the rust binary should be built by linking statically with MUSL?

@skeet70
Copy link
Member

skeet70 commented Aug 1, 2024

According to aws lambda python docs, amazon/aws-lambda-python:3.12 is built on Amazon Linux 2023 as a base image, which does include a more modern GLIBC (the 2.26 on the 3.11 base image is 7 years old now!).

There's also the option of building a 2023 based python 3.11 image yourself or building ironcore-alloy statically linked to your preferred version of musl yourself.

I'll leave this issue open though, as a statically linked musl version would be nice to provide. The biggest issue I forsee would be that we don't want it to be the default, so we'd either need some trickiness to get the pip install to only pull down the musl version for each architecture when glibc isn't available in the right version, or have it as a second class citizen downloaded from releases and installed manually.

I'll also make a PR adding libc 2.29+ as a pre-requisite to the README for now.

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

3 participants