[MacPorts] #13929: py25-tkinter links wrong tcl, tk libraries

MacPorts trac at macosforge.org
Mon Jan 14 13:49:14 PST 2008


#13929: py25-tkinter links wrong tcl, tk libraries
---------------------------+------------------------------------------------
 Reporter:  wiml at hhhh.org  |       Owner:  macports-tickets at lists.macosforge.org
     Type:  defect         |      Status:  new                                  
 Priority:  Normal         |   Milestone:                                       
Component:  ports          |     Version:  1.6.0                                
 Keywords:                 |  
---------------------------+------------------------------------------------
 Installing py25-tkinter compiles against the MacPorts headers for tcl/tk
 8.5, but links the final .so against the system copies:

 {{{
 wiml at slowpoke-9A581% otool -L /opt/local/lib/python2.5/site-
 packages/_tkinter.so
 /opt/local/lib/python2.5/site-packages/_tkinter.so:
         /System/Library/Frameworks/Tcl.framework/Versions/8.4/Tcl
 (compatibility version 8.4.0, current version 8.4.0)
         /System/Library/Frameworks/Tk.framework/Versions/8.4/Tk
 (compatibility version 8.4.0, current version 8.4.0)
         /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
 version 111.0.0)
 }}}

 As a result, the Tkinter module fails with a version mismatch when you use
 it:

 {{{
 >>> t = Tkinter.Tk()
 Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File "/opt/local/lib/python2.5/lib-tk/Tkinter.py", line 1638, in
 __init__
     self._loadtk()
   File "/opt/local/lib/python2.5/lib-tk/Tkinter.py", line 1658, in _loadtk
     % (_tkinter.TK_VERSION, tk_version)
 RuntimeError: tk.h version (8.5) doesn't match libtk.a version (8.4)
 }}}

 Using DYLD_PRINT_LIBRARIES verifies that it's getting Python modules from
 /opt/local, but is loading Tcl/Tk from the system frameworks (and not
 loading ports' versions).

 This is on Leopard, 10.5.1/9B18, with a fresh MacPorts install (just
 installed it and fired off 'install py25-matplotlib' today); this
 partition hasn't had MacPorts on it before. Version is "MacPorts 1.600",
 selfupdate says it's all up-to-date.

-- 
Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/13929>
MacPorts </projects/macports>
Ports system for Mac OS


More information about the macports-tickets mailing list