Skip to content

Build pyQuARC layer in Lambda-compatible Docker image - #45

Merged
slesaad merged 1 commit into
masterfrom
staging
Jul 28, 2026
Merged

Build pyQuARC layer in Lambda-compatible Docker image#45
slesaad merged 1 commit into
masterfrom
staging

Conversation

@slesaad

@slesaad slesaad commented Jul 28, 2026

Copy link
Copy Markdown
Member

Plain pip install on the ubuntu-latest runner selects manylinux_2_28 wheels (lxml >= 5) that require glibc 2.28, but the python3.9 Lambda runtime runs on Amazon Linux 2 with glibc 2.26, causing:

Runtime.ImportModuleError: /lib64/libc.so.6: version 'GLIBC_2.28'
not found (required by /opt/python/lxml/etree...so)

Run the layer pip install inside public.ecr.aws/sam/build-python3.9 (AL2, glibc 2.26) so pip resolves manylinux_2_17 wheels and any sdist builds link against the runtime's glibc. Verified: layer built this way imports lxml 5.3.0 on AL2; max required symbol is GLIBC_2.14.

Plain pip install on the ubuntu-latest runner selects manylinux_2_28
wheels (lxml >= 5) that require glibc 2.28, but the python3.9 Lambda
runtime runs on Amazon Linux 2 with glibc 2.26, causing:

  Runtime.ImportModuleError: /lib64/libc.so.6: version 'GLIBC_2.28'
  not found (required by /opt/python/lxml/etree...so)

Run the layer pip install inside public.ecr.aws/sam/build-python3.9
(AL2, glibc 2.26) so pip resolves manylinux_2_17 wheels and any
sdist builds link against the runtime's glibc. Verified: layer built
this way imports lxml 5.3.0 on AL2; max required symbol is GLIBC_2.14.
@slesaad
slesaad merged commit 9a32479 into master Jul 28, 2026
2 checks passed
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.

1 participant