New submission from Ned Deily <n...@acm.org>: Xcode 3.2.6, the most recent release for OS X 10.6 (Snow Leopard), has a subtle but critical bug that affects Python builds using OS X SDKs (--enable-universalsdk=/Developer/SDKs/MacOSX10.?.sdk). The Xcode installer creates faulty symlinks to /Library within /Developer/SDKs. The net effect is that frameworks installed in /Library, such as ActiveState Tcl and Tk, are not found during a build using the SDK as they should be.
$ cd /Developer/SDKs/MacOSX10.6.sdk/Library $ ls -l total 8 lrwxr-xr-x 1 root wheel 19 Mar 17 18:24 Frameworks@ -> /Library/Frameworks it ends up with an extra Frameworks directory so that /Developer/SDKs/MacOSX10.6.sdk/Library/Frameworks/Frameworks/ -> /Library/Frameworks The solution is to manually go in and fix the symlinks in /Developer/SDKs/MacOSX10.6.sdk, and remember to do so again if you have to reinstall Xcode 3.2.6. AFAIK, this bug is unique to Xcode 3.2.6, not earlier versions of 3.2.x. The effect on Python builds is that tkinter is linked against the Apple-supplied Tcl and Tk frameworks rather than the ActiveState ones which is not what is desired. While the problem is created by Apple, the OS X Python installer build script, Mac/BuildScript/build-installer.py, should include a post-build check using otool -L that _tkinter.so is linked as expected. The script already includes tests pre-build to ensure that the additional frameworks are in place. ---------- assignee: ned.deily components: Build, Macintosh messages: 153381 nosy: ned.deily priority: normal severity: normal stage: needs patch status: open title: OS X installer does not detect bad symlinks created by Xcode 3.2.6 versions: Python 2.7, Python 3.2, Python 3.3 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue14018> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com