Skip to content

20260320 builds seem to have executable-stack set on python shared library #1061

@bersbersbers

Description

@bersbersbers

I must admit I don't exactly know what the above means, but I encountered pyinstaller errors (copied below) which were traced back to apparent changes in these Python builds:

My first hypothesis is thus https://github.com/astral-sh/python-build-standalone/releases/tag/20260320.

This indeed seems to be the case.

The builds in this release seem to have executable-stack set on python shared library, which can refuse to be loaded on sufficiently hardened systems (e.g., by SELinux).

$ wget https://github.com/astral-sh/python-build-standalone/releases/download/20260320/cpython-3.14.3+20260320-x86_64-unknown-linux-gnu-install_only.tar.gz
$ tar xvf cpython-3.14.3+20260320-x86_64-unknown-linux-gnu-install_only.tar.gz
$ execstack -q python/lib/libpython3.14.so
X python/lib/libpython3.14.so

vs. previous release:

$ wget https://github.com/astral-sh/python-build-standalone/releases/download/20260310/cpython-3.14.3+20260310-x86_64-unknown-linux-gnu-install_only.tar.gz
$ tar xvf cpython-3.14.3+20260310-x86_64-unknown-linux-gnu-install_only.tar.gz
$ execstack -q python/lib/libpython3.14.so
- python/lib/libpython3.14.so

As their python interpreter is not linked against the shared library (it's one of those builds where executable is statically linked against python shared library, and the latter is provided only for embedders, such as PyInstaller), it is not directly affected by this issue; and so I imagine it is easy for a problem like this to go unnoticed on their side.

Originally posted by @rokm in #9413

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions