-
-
Notifications
You must be signed in to change notification settings - Fork 30.1k
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
In debug build, load also C extensions compiled in release mode or compiled using the stable ABI #80903
Comments
bpo-36465 modified the ABI of debug build so release and debug build now have the same ABI. bpo-21536 modified how C extensions are built: they are no longer linked to libpython. In a debug build, it becomes possible to load a C extension built in release mode: But I had to modify SOABI for that. I propose to modify how Python looks for C extensions: look also for dynamic libraries without the "d" SOABI flag and for C extensions built using the stable ABI. Release build: $ ./python -c 'import _imp; print(_imp.extension_suffixes())'
['.cpython-38-x86_64-linux-gnu.so', '.abi3.so', '.so'] Debug build, *WITHOUT* my change: $ ./python -c 'import _imp; print(_imp.extension_suffixes())'
['.cpython-38d-x86_64-linux-gnu.so', '.so'] Debug build, *WITH* my change: $ ./python -c 'import _imp; print(_imp.extension_suffixes())'
['.cpython-38d-x86_64-linux-gnu.so', '.cpython-38-x86_64-linux-gnu.so', '.abi3.so', '.so'] |
Oh, there is an issue: --with-trace-refs has a different ABI and so should not do that. |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
bugs.python.org fields:
The text was updated successfully, but these errors were encountered: