如何让tkinter使用Ubuntu的默认Python 2.7安装?

时间:2012-08-01 03:26:43

标签: python ubuntu tkinter

我正在使用Ubuntu 11.10,它预先安装了Python 2.7.3。

我安装了python3软件包和python3-tk软件包,通过apt-get install,他们一起“开箱即用”。

但是虽然我已经安装了python-tk包,但我无法弄清楚如何让Python2.7看到它。我尝试导入时会收到以下错误消息。

import Tkinter
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/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

编辑:我还根据Python-tk package not recognized in Python 2.7.3运行了以下内容,并得到了:

$ file /usr/lib/libtk8.5.so.0
/usr/lib/libtk8.5.so.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped

$ uname -a
Linux bugbot 3.0.0-23-generic-pae #39-Ubuntu SMP Thu Jul 19 19:39:19 UTC 2012 i686 i686 i386 GNU/Linux

3 个答案:

答案 0 :(得分:11)

我花了太多时间在这个问题上花了很多时间,所以希望我可以省去别人的麻烦。

我发现这个旧的错误报告被认为是无效的,提到了我遇到的确切问题,我有Tkinter.py,但找不到模块_tkinter:http://bugs.python.org/issue8555

我使用apt-get安装了tk-dev软件包,并使用./configure,make和make install在Python2.7.3目录中重建了Python。而现在我的Python2.7可以导入Tkinter,是的!

我有点恼火,在Python安装文档中根本没有提到tk-dev软件包....下面是Python中缺少模块的另一个有用资源,如果像我一样,有人应该发现它们是错过了超过_tkinter。

Building Python and more on missing modules

答案 1 :(得分:0)

我遇到了与python3.4相同的问题(ImportError:没有名为'_tkinter'的模块)

sudo apt-get install tk-dev

到了python源目录

./configure
make
sudo make install

答案 2 :(得分:0)

以下在Linux Mint 16上解决了我的问题:

sudo apt-get install tk-dev python-tk 

我使用virtualenv但是不想编译python,为了使python支持tk,应该安装python-tk。