homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: OS X framework builds do not create ABI-suffixed libpython3.x
Type: Stage: resolved
Components: Build Versions: Python 3.2, Python 3.3
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: ned.deily Nosy List: georg.brandl, ned.deily, python-dev, shibingli
Priority: normal Keywords: patch

Created on 2012年03月05日 04:57 by shibingli, last changed 2022年04月11日 14:57 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
py32_uWSGI.txt shibingli, 2012年03月05日 05:29
issue14197.patch ned.deily, 2012年07月24日 10:14 review
Messages (9)
msg154921 - (view) Author: shibingli (shibingli) Date: 2012年03月05日 04:57
Artificial libpython3.2.a soft links to libpython3.2m.a
msg154923 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2012年03月05日 05:18
Sorry, can you explain better what problem you are seeing including specific error messages?
msg154925 - (view) Author: shibingli (shibingli) Date: 2012年03月05日 05:29
Use the Mac OS 10.7 compiler uWSGI Makefile.Py32 (make-f), will report a compile error. Information in the annex.Artificially will the soft libpython3.2.a / Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/config-3.2m under connection to a libpython3.2m.a, the problem-solving.
msg154926 - (view) Author: shibingli (shibingli) Date: 2012年03月05日 05:30
Has been revised to permit BUG Description
在 2012年3月5日,下午1:18, Ned Deily 写道:
> 
> Ned Deily <nad@acm.org> added the comment:
> 
> Sorry, can you explain better what problem you are seeing including specific error messages?
> 
> ----------
> nosy: +ned.deily
> 
> _______________________________________
> Python tracker <report@bugs.python.org>
> <http://bugs.python.org/issue14197>
> _______________________________________
msg154930 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2012年03月05日 08:09
Thank you for the additional information. It appears the problem is that, for OS X framework builds, the ABI suffix (added in PEP 3149) is not used to create the shared library dylib name in the framework lib directory. For example,
$ cd Library/Frameworks/Python.framework/Versions/3.2
$ ./bin/python3.2-config --libs
-ldl -framework CoreFoundation -lpython3.2m
$ ls -l ./lib
total 8
lrwxr-xr-x 1 root wheel 9 Feb 24 09:44 libpython3.2.dylib@ -> ../Python
drwxrwxr-x 2 root admin 170 Feb 24 08:49 pkgconfig/
drwxrwxr-x 32 root admin 6290 Feb 24 08:49 python3.2/
But in an --enable-shared --with-pydebug build:
$ ./bin/python3.2-config --libs
-ldl -framework CoreFoundation -lpython3.2dm
$ ls -l ./lib
total 6920
-r-xr-xr-x 1 nad pyd 3541320 Mar 4 23:40 libpython3.2dm.dylib*
drwxr-xr-x 2 nad pyd 170 Mar 4 23:40 pkgconfig/
drwxr-xr-x 32 nad pyd 6290 Mar 4 23:40 python3.2/
Looks like target frameworkinstallmaclib in Makefile.pre.in needs to be changed to include SOABI in the name for the lib symlink.
msg166270 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2012年07月24日 10:14
The attached patch ensures that additional SOABI-suffixed symlinks are created in the framework lib and lib/pythonx.x/config-yy directories and fixes pythons.x-config to not return garbage data for the --ldflags option. 
# current
$ ls -l /Library/Frameworks/Python.framework/Versions/3.2/lib
total 8
lrwxr-xr-x 1 root wheel 9 Jul 15 17:40 libpython3.2.dylib@ -> ../Python
drwxrwxr-x 2 root admin 170 Apr 10 11:27 pkgconfig/
drwxrwxr-x 32 root admin 6290 Apr 10 11:27 python3.2/
# with patch
$ ls -l /Library/Frameworks/Python.framework/Versions/3.2/lib
total 16
lrwxr-xr-x 1 root wheel 9 Jul 24 02:43 libpython3.2.dylib@ -> ../Python
lrwxr-xr-x 1 root wheel 9 Jul 24 02:43 libpython3.2m.dylib@ -> ../Python
drwxrwxr-x 2 root admin 170 Jul 24 02:38 pkgconfig/
drwxrwxr-x 34 root admin 6494 Jul 24 02:38 python3.2/
# current
$ ls -l /Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/config-3.2m/
total 256
-rw-rw-r-- 1 root admin 51118 Apr 10 11:27 Makefile
-rw-rw-r-- 1 root admin 15018 Apr 10 11:27 Setup
-rw-rw-r-- 1 root admin 370 Apr 10 11:27 Setup.config
-rw-rw-r-- 1 root admin 41 Apr 10 11:27 Setup.local
-rw-rw-r-- 1 root admin 2902 Apr 10 11:27 config.c
-rw-rw-r-- 1 root admin 1642 Apr 10 11:27 config.c.in
-rwxrwxr-x 1 root admin 7122 Apr 10 11:27 install-sh*
lrwxr-xr-x 1 root wheel 15 Jul 15 17:40 libpython3.2.a@ -> ../../../Python
lrwxr-xr-x 1 root wheel 15 Jul 15 17:40 libpython3.2.dylib@ -> ../../../Python
-rwxrwxr-x 1 root admin 7460 Apr 10 11:27 makesetup*
-rw-rw-r-- 1 root admin 18776 Apr 10 11:27 python.o
# with patch
$ ls -l /Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/config-3.3m/
total 280
-rw-rw-r-- 1 root admin 55198 Jul 24 02:38 Makefile
-rw-rw-r-- 1 root admin 15009 Jul 24 02:38 Setup
-rw-rw-r-- 1 root admin 370 Jul 24 02:38 Setup.config
-rw-rw-r-- 1 root admin 41 Jul 24 02:38 Setup.local
-rw-rw-r-- 1 root admin 2963 Jul 24 02:38 config.c
-rw-rw-r-- 1 root admin 1619 Jul 24 02:38 config.c.in
-rwxrwxr-x 1 root admin 7122 Jul 24 02:38 install-sh*
lrwxr-xr-x 1 root wheel 15 Jul 24 02:43 libpython3.2.a@ -> ../../../Python
lrwxr-xr-x 1 root wheel 15 Jul 24 02:43 libpython3.2.dylib@ -> ../../../Python
lrwxr-xr-x 1 root wheel 15 Jul 24 02:43 libpython3.2m.a@ -> ../../../Python
lrwxr-xr-x 1 root wheel 15 Jul 24 02:43 libpython3.2m.dylib@ -> ../../../Python
-rwxrwxr-x 1 root admin 7460 Jul 24 02:38 makesetup*
-rw-rw-r-- 1 root admin 18896 Jul 24 02:38 python.o
# current
$ python3.2-config --ldflags
-L/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/config-3.2m -ldl -framework CoreFoundation -lpython3.2m -framework CoreFoundation Python.framework/Versions/3.2/Python
# with patch
$ python3.2-config --ldflags
-L/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.3/config-3.2m -ldl -framework CoreFoundation -lpython3.2m
msg166271 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2012年07月24日 10:19
Georg, I'd like to apply this for both 3.2.4 and 3.3.0b2. It's a low risk bug fix but does solve a real problem for users wanting to embed Python on OS X. Issue15353 is also fixed by this.
msg166273 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2012年07月24日 10:46
New changeset 2d4f290ea71c by Ned Deily in branch '3.2':
Issue #14197: For OS X framework builds, ensure links to the shared
http://hg.python.org/cpython/rev/2d4f290ea71c
New changeset 51ac5f06dd04 by Ned Deily in branch 'default':
Issue #14197: merge
http://hg.python.org/cpython/rev/51ac5f06dd04 
msg166274 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2012年07月24日 10:50
Fix applied for release in 3.2.4 and (with release manager approval) for 3.3.0b2.
History
Date User Action Args
2022年04月11日 14:57:27adminsetgithub: 58405
2012年07月24日 11:00:15ned.deilylinkissue15353 superseder
2012年07月24日 10:50:26ned.deilysetstatus: open -> closed
type: compile error ->
messages: + msg166274

components: + Build, - macOS, None
resolution: fixed
stage: patch review -> resolved
2012年07月24日 10:46:13python-devsetnosy: + python-dev
messages: + msg166273
2012年07月24日 10:19:16ned.deilysetnosy: + georg.brandl
messages: + msg166271
2012年07月24日 10:14:06ned.deilysetfiles: + issue14197.patch
keywords: + patch
messages: + msg166270

stage: needs patch -> patch review
2012年03月05日 08:09:21ned.deilysetversions: + Python 3.3
title: MacOS10.7 compiled uWSGI the issue. -> OS X framework builds do not create ABI-suffixed libpython3.x
messages: + msg154930

assignee: ned.deily
components: + macOS
stage: needs patch
2012年03月05日 05:30:55shibinglisetmessages: + msg154926
2012年03月05日 05:29:30shibinglisetfiles: + py32_uWSGI.txt

messages: + msg154925
2012年03月05日 05:18:43ned.deilysetnosy: + ned.deily
messages: + msg154923
2012年03月05日 04:57:08shibinglicreate

AltStyle によって変換されたページ (->オリジナル) /