[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