mirror of
https://github.com/python/cpython
synced 2026-09-29 12:10:30 +03:00
bpo-36721: Add --embed option to python-config (GH-13500)
To embed Python into an application, a new --embed option must be passed to "python3-config --libs --embed" to get "-lpython3.8" (link the application to libpython). To support both 3.8 and older, try "python3-config --libs --embed" first and fallback to "python3-config --libs" (without --embed) if the previous command fails. Add a pkg-config "python-3.8-embed" module to embed Python into an application: "pkg-config python-3.8-embed --libs" includes "-lpython3.8". To support both 3.8 and older, try "pkg-config python-X.Y-embed --libs" first and fallback to "pkg-config python-X.Y --libs" (without --embed) if the previous command fails (replace "X.Y" with the Python version). On the other hand, "pkg-config python3.8 --libs" no longer contains "-lpython3.8". C extensions must not be linked to libpython (except on Android, case handled by the script); this change is backward incompatible on purpose. "make install" now also installs "python-3.8-embed.pc".
This commit is contained in:
parent
ef5bb25e2d
commit
0a8e57248b
10 changed files with 78 additions and 9 deletions
13
Misc/python-embed.pc.in
Normal file
13
Misc/python-embed.pc.in
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# See: man pkg-config
|
||||
prefix=@prefix@
|
||||
exec_prefix=@exec_prefix@
|
||||
libdir=@libdir@
|
||||
includedir=@includedir@
|
||||
|
||||
Name: Python
|
||||
Description: Embed Python into an application
|
||||
Requires:
|
||||
Version: @VERSION@
|
||||
Libs.private: @LIBS@
|
||||
Libs: -L${libdir} -lpython@VERSION@@ABIFLAGS@
|
||||
Cflags: -I${includedir}/python@VERSION@@ABIFLAGS@
|
||||
Loading…
Add table
Add a link
Reference in a new issue