On Mar 3, 2008, at 2:11 PM, Ryan Schmidt wrote:
I neglected to mention that I'm using Python 2.5 also. So I changed my py25-tkinter back to the 8.4 version using the following Portfile @30184:
<@30184>
That worked fine (and I had to download the setup.py and add it to a 'files' folder). I then noticed that Tk needs to be downgraded to 8.4 also. So I got Portfile @30811 of that:
<@30811>
But when I tried to 'port install' it, I get the following compile error:
frank$ sudo port install ---> Building tk with target all Error: Target org.macports.build returned: shell command " cd "/opt/ local/var/macports/build/_Users_frank_Downloads_tk84/work/tk8.4.16/ unix" && make all " returned error 2 Command output: /usr/bin/gcc-4.0 -c -Os -O2 -pipe -I/opt/local/ include -I/opt/local/var/macports/build/_Users_frank_Downloads_tk84/ work/tcl8.4.16/generic -Wall -Wno-implicit-int -fno-strict- aliasing -fno-common -I/opt/local/var/macports/build/ _Users_frank_Downloads_tk84/work/tk8.4.16/unix -I/opt/local/var/ macports/build/_Users_frank_Downloads_tk84/work/tk8.4.16/unix/../ generic -I/opt/local/var/macports/build/_Users_frank_Downloads_tk84/ work/tk8.4.16/unix/../bitmaps -I/opt/local/var/macports/build/ _Users_frank_Downloads_tk84/work/tk8.4.16/unix/../../tcl8.4.16// generic -I/usr/X11/include -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 - DHAVE_COREFOUNDATION=1 -DMAC_OSX_TCL=1 -DTCL_WIDE_INT_TYPE=long\ long -DHAVE_STRUCT_STAT64=1 -DHAVE_SYS_TIME_H=1 - DTIME_WITH_SYS_TIME=1 -DSTDC_HEADERS=1 -DHAVE_PW_GECOS=1 - DTCL_NO_DEPRECATED -DUSE_TCL_STUBS /opt/local/var/macports/build/ _Users_frank_Downloads_tk84/work/tk8.4.16/unix/../generic/tkMain.c In file included from /opt/local/var/macports/build/ _Users_frank_Downloads_tk84/work/tk8.4.16/unix/../generic/tkMain.c: 24: /opt/local/include/tk.h:23:3: error: #error Tk 8.5 must be compiled with tcl.h from Tcl 8.5 make: *** [tkMain.o] Error 1
Error: Status 1 encountered during processing.
Any suggestions as to what I'm doing wrong?
That's like this bug:
http://trac.macosforge.org/projects/macports/ticket/13678
You must deactivate or uninstall tk 8.5 before you can build tk 8.4. I think this is a peculiarity of tk.
This problem was supposedly fixed in the latest version of the portfile, but still exists of course in the old version of the portfile you're using.
OK, that works. Thanks! But now when I try to run my python program, I get the following runtime error: File "./my_python_program.py", line 158, in <module> parent=Tkinter.Tk() 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) Any more suggestions for me? Here's a reduced look at my "port installed" output. py25-tkinter @2.5.1_0 (active) python25 @2.5.1_4+darwin_9 python25 @2.5.2_0+darwin_9 (active) tcl @8.4.16_0+darwin_9 (active) tcl @8.5.1_0 tk @8.4.16_0 (active) tk @8.5.1_0 Cheers! Frank