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.

Author srid
Recipients RolandJ, ned.deily, ronaldoussoren, srid
Date 2010-06-28.20:32:27
SpamBayes Score 1.5647664e-05
Marked as misclassified No
Message-id <1277757149.84.0.87130515587.issue9045@psf.upfronthosting.co.za>
In-reply-to
Content
I tried patching setup.py to force linking to Apple's Tcl/Tk:

--- python/setup.py.original	2010-06-28 11:40:26.000000000 -0700
+++ python/setup.py	2010-06-28 11:45:39.000000000 -0700
@@ -1682,6 +1682,15 @@
         for F in framework_dirs:
             # both Tcl.framework and Tk.framework should be present
 
+            # When building for 64-bit (presumably on 10.6, with 10.5 SDK),
+            # skip the SDK Tcl/Tk and instead use the one on /System/Library
+            # which is Apple's Tcl/Tk 8.5 with 64-bit.
+            if PT_CONFIG_mac_64bit:
+                F = '/System/Library/Frameworks/' # force Apple's one
+                for fw in 'Tcl', 'Tk':
+                    if not exists(join(F, fw + '.framework')):
+                        raise IOError('No %s found in %s' % (fw, F))
+                break
 
             for fw in 'Tcl', 'Tk':
                 if is_macosx_sdk_path(F):


But unfortunately, even though we use 8.5 header files ... the link line uses `-isysroot`, thereby linking to 8.4:

gcc -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.5.sdk/ -isysroot /Developer/SDKs/MacOSX10.5.sdk/ -bundle -undefined dynamic_lookup -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.5.sdk/ -isysroot /Developer/SDKs/MacOSX10.5.sdk/ build/temp.macosx-10.5-intel-2.7/Users/sridharr/as/apy/trunk/build/pyhg_trunk-macosx-hgtip27/python/Modules/_tkinter.o build/temp.macosx-10.5-intel-2.7/Users/sridharr/as/apy/trunk/build/pyhg_trunk-macosx-hgtip27/python/Modules/tkappinit.o -L/Library/Frameworks/Python.framework/Versions/2.7/lib -o build/lib.macosx-10.5-intel-2.7/_tkinter.so -framework Tcl -framework Tk
ld: warning: in /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks//Tk.framework/Tk, missing required architecture x86_64 in file
*** WARNING: renaming "_tkinter" since importing it failed: dlopen(build/lib.macosx-10.5-intel-2.7/_tkinter.so, 2): Symbol not found: _Tk_GetNumMainWindows
History
Date User Action Args
2010-06-28 20:32:29sridsetrecipients: + srid, ronaldoussoren, ned.deily, RolandJ
2010-06-28 20:32:29sridsetmessageid: <1277757149.84.0.87130515587.issue9045@psf.upfronthosting.co.za>
2010-06-28 20:32:27sridlinkissue9045 messages
2010-06-28 20:32:27sridcreate