Found on Python 3.7.4, with cryptography 2.7, pip 19.2.3, cffi 1.12.3, setuptools 41.2.0 but most likely all versions are affected.
Installed with pip install --prefix=/tmp/crypto --no-deps --ignore-installed --no-build-isolation .
Target architecture is Power9 (ppcle64) which is important due to a change in pthread/GLIBC.
The issue is caused by a wrong/missing order of -lpthread when linking the shared library. Full details can be found at https://ryanarn.blogspot.com/2011/07/curious-case-of-pthreadatfork-on.html
In fact it seems that phtread is not even linked explicitely:
gcc
-shared
-L/sw/installed/libffi/3.2.1-GCCcore-8.2.0/lib64
-L/sw/installed/libffi/3.2.1-GCCcore-8.2.0/lib
-L/sw/installed/GMP/6.1.2-GCCcore-8.2.0/lib
-L/sw/installed/XZ/5.2.4-GCCcore-8.2.0/lib
-L/sw/installed/SQLite/3.27.2-GCCcore-8.2.0/lib
-L/sw/installed/ncurses/6.1-GCCcore-8.2.0/lib
-L/sw/installed/libreadline/8.0-GCCcore-8.2.0/lib
-L/sw/installed/zlib/1.2.11-GCCcore-8.2.0/lib
-L/sw/installed/bzip2/1.0.6-GCCcore-8.2.0/lib
-L/sw/installed/binutils/2.31.1-GCCcore-8.2.0/lib
-L/sw/installed/GCCcore/8.2.0/lib64
-L/sw/installed/GCCcore/8.2.0/lib
-L/sw/installed/libffi/3.2.1-GCCcore-8.2.0/lib64
-L/sw/installed/libffi/3.2.1-GCCcore-8.2.0/lib
-L/sw/installed/GMP/6.1.2-GCCcore-8.2.0/lib
-L/sw/installed/XZ/5.2.4-GCCcore-8.2.0/lib
-L/sw/installed/SQLite/3.27.2-GCCcore-8.2.0/lib
-L/sw/installed/ncurses/6.1-GCCcore-8.2.0/lib
-L/sw/installed/libreadline/8.0-GCCcore-8.2.0/lib
-L/sw/installed/zlib/1.2.11-GCCcore-8.2.0/lib
-L/sw/installed/bzip2/1.0.6-GCCcore-8.2.0/lib
-L/sw/installed/binutils/2.31.1-GCCcore-8.2.0/lib
-L/sw/installed/GCCcore/8.2.0/lib64
-L/sw/installed/GCCcore/8.2.0/lib
build/temp.linux-ppc64le-3.7/build/temp.linux-ppc64le-3.7/_openssl.o
-L/tmp/ebtmpinstall/eb/Python/3.7.2-GCCcore-8.2.0/lib
-lssl
-lcrypto
-lpython3.7m
-o
build/lib.linux-ppc64le-3.7/cryptography/hazmat/bindings/_openssl.abi3.so
Found on Python 3.7.4, with cryptography 2.7, pip 19.2.3, cffi 1.12.3, setuptools 41.2.0 but most likely all versions are affected.
Installed with
pip install --prefix=/tmp/crypto --no-deps --ignore-installed --no-build-isolation .Target architecture is Power9 (ppcle64) which is important due to a change in pthread/GLIBC.
The issue is caused by a wrong/missing order of
-lpthreadwhen linking the shared library. Full details can be found at https://ryanarn.blogspot.com/2011/07/curious-case-of-pthreadatfork-on.htmlIn fact it seems that phtread is not even linked explicitely: