[MacPorts] #25221: "import Tkinter" fails in python26 @2.6.5_1 with 64-bit tk @8.5.8+quartz

MacPorts noreply at macports.org
Sat Jun 12 10:45:09 PDT 2010


#25221: "import Tkinter" fails in python26 @2.6.5_1 with 64-bit tk @8.5.8+quartz
---------------------------------+------------------------------------------
 Reporter:  jabronson@…          |       Owner:  macports-tickets@…                   
     Type:  defect               |      Status:  new                                  
 Priority:  Normal               |   Milestone:                                       
Component:  ports                |     Version:  1.9.0                                
 Keywords:                       |        Port:  python26                             
---------------------------------+------------------------------------------
 A few months ago I built 64-bit Macports tk +quartz (using the
 [attachment:tk-858-decarbon.patch:ticket:20799 fix] from #20799), after
 which I was able to use the Tkinter module of Macports python26 (then
 @2.6.4) to create native Aqua windows. I just tried "import Tkinter" for
 the first time in a while and now I get:
 {{{
 Python 2.6.5 (r265:79063, Jun 12 2010, 12:43:44)
 [GCC 4.2.1 (Apple Inc. build 5646) (dot 1)] on darwin
 Type "help", "copyright", "credits" or "license" for more information.
 >>> import Tkinter
 Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File
 "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6
 /lib-tk/Tkinter.py", line 39, in <module>
     import _tkinter # If this fails your Python may not be configured for
 Tk
 ImportError: No module named _tkinter
 }}}

 As you can see, I've since upgraded to Python 2.6.5. I just tried building
 Macports Python 2.6.5 again and sure enough, I noticed this output:
 {{{
 ...
 building '_tkinter' extension
 /usr/bin/gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g
 -fwrapv -O3 -Wall -Wstrict-prototypes -DWITH_APPINIT=1 -I.
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/./Include
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/./Mac/Include
 -I/opt/local/Library/Frameworks/Python.framework/Versions/2.6/include -I.
 -IInclude -I./Include -I/opt/local/include -I/opt/local/include/ncurses
 -I/usr/local/include
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Include
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5
 -c
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Modules/_tkinter.c
 -o
 build/temp.macosx-10.6-x86_64-2.6/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Modules/_tkinter.o
 /usr/bin/gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g
 -fwrapv -O3 -Wall -Wstrict-prototypes -DWITH_APPINIT=1 -I.
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/./Include
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/./Mac/Include
 -I/opt/local/Library/Frameworks/Python.framework/Versions/2.6/include -I.
 -IInclude -I./Include -I/opt/local/include -I/opt/local/include/ncurses
 -I/usr/local/include
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Include
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5
 -c
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Modules/tkappinit.c
 -o
 build/temp.macosx-10.6-x86_64-2.6/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Modules/tkappinit.o
 /usr/bin/gcc-4.2 -L/opt/local/lib -arch x86_64 -bundle -undefined
 dynamic_lookup
 build/temp.macosx-10.6-x86_64-2.6/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Modules/_tkinter.o
 build/temp.macosx-10.6-x86_64-2.6/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python26/work/Python-2.6.5/Modules/tkappinit.o
 -L/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib
 -L/opt/local/lib -L/usr/local/lib -ltk8.5 -ltcl8.5 -lX11 -o
 build/lib.macosx-10.6-x86_64-2.6/_tkinter.so
 ld: library not found for -lX11
 collect2: ld returned 1 exit status
 ...
 Failed to build these modules:
 _tkinter
 ...
 }}}

 It looks like it's mistakenly passing "-lX11" when it's trying to build
 _tkinter.so. Am I correct in suspecting that since my tk is built with
 +quartz, libX11 should not be involved in building _tkinter? Is there a
 way to fix this?

 I'm running Macports 1.9.0 and OS X 10.6.3.

 Thanks!
 Josh

-- 
Ticket URL: <http://trac.macports.org/ticket/25221>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list