Tcl / Tk Tkinter版本8.4和8.5在Mac OS X 10.4.11与python 2.6.4上发生冲突

时间:2010-02-11 21:48:26

标签: python macos tkinter tk

我无法让Tkinter运行并运行以安装matplot lib。

我正在运行Mac OS X 10.4.11,刚刚安装了Python 2.6.4。

经过几次其他打斗之后,让我安装matlotlib的剩余战斗就是拥有Tkinter的工作版本,虽然我的Mac中有几个来自Xcode和Python,但我猜他们只是没有安装在有用的地方?安装Python 2.6.4后,导入_tkinter失败。所以我从活动状态安装了Tcl 8.5。

现在,我进入Tkinter测试:

  
    
      

Tkinter._test()       Traceback(最近一次调用最后一次):         文件“”,第1行,in         在_test中输入文件“/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py”,第3746行           root = Tk()         文件“/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py”,第1645行, init           self._loadtk()         在_loadtk中输入文件“/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py”,第1659行           %(_ tkinter.TK_VERSION,tk_version)       RuntimeError:tk.h version(8.4)与libtk.a version(8.5)

不匹配     
  

我意识到你已经讨论了我在这里描述的确切错误: http://bugs.python.org/issue4017

但是这些错误源自早期版本的python的问题,其中setup.py颠倒了查看位置的顺序。你在上一篇文章中的建议是在setup.py中修改这个顺序并重建python,但我的setup.py看起来已经很好了 - 它包括以下几行:

def detect_tkinter_darwin(self,inc_dirs,lib_dirs):         #_tkinter模块,使用框架。由于框架是相当的         #不同的UNIX搜索逻辑是不可共享的。         来自os.path导入连接,存在         framework_dirs = [             '/库/框架',             '/系统/资源库/框架/',             join(os.getenv('HOME'),'/ Library / Frameworks')

我真的很感激有关如何处理这个问题的任何见解!(我是一名生物学家......)

当我在这里时,我将包括当我尝试安装m matplotlib时发生的事情,以防它有用... matplotlib认为我有Tkinter 8.4(具有讽刺意味的是,我只安装了8.5,之前它总是说它找不到Tkinter):

Tkinter:Tkinter:65971,Tk:8.4,Tcl:8.4

另外,这是我在尝试构建matplotlib时遇到的错误:

powerpc-apple-darwin8-g ++ - 4.0.1:无法识别的选项'-syslibroot,/ Developer / SDKs / MacOSX10.4u.sdk' i686-apple-darwin8-g ++ - 4.0.1:无法识别的选项'-syslibroot,/ Developer / SDKs / MacOSX10.4u.sdk' / usr / bin / ld:-syslibroot:指定的倍数 collect2:ld返回1退出状态 / usr / bin / ld:-syslibroot:指定的倍数 collect2:ld返回1退出状态 lipo:无法打开输入文件:/var/tmp//ccrblCgU.out(没有这样的文件或目录) 错误:命令'g ++'失败,退出状态为1 make:*** [mpl_build]错误1

谢谢!!

卡特琳

1 个答案:

答案 0 :(得分:2)

我认为之前提出的解决方案的重点是Python在安装时检测到Tk的正确版本和位置。我假设您在安装Python后安装了Tk。当我使用.dmg安装程序重新安装Python2.6时,我的机器上解决了这个问题。我不需要重建或任何东西。我希望这有帮助。 :)