Linux升级Python提示Tkinter模块找不到解决

一、安装tkinter

在Linux中python默认是不安装Tkinter模块,

[root@li250-193 ~]# python
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named Tkinter
>>>

我们安装Tkinter模块

1 [root@li250-193 ~]# yum -y install tkinter
2 ...
3 [root@li250-193 ~]# python
4 Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
5 [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
6 Type "help", "copyright", "credits" or "license" for more information.
7 >>> import Tkinter
8 >>>

二、升级Python

Linux的Python版本默认都不叫低

查看Python版本

1 [root@li250-193 ~]# python -V
2 Python 2.6.6

DOWN新版本

1 [root@li250-193 ~]# wget http://www.python.org/ftp/python/2.7.4/Python-2.7.4.tgz

解压安装

1 [root@li250-193 ~]# tar -xf Python-2.7.4.tgz
2 [root@li250-193 ~]# cd Python-2.7.4
3 [root@li250-193 Python-2.7.4]# ./configure
4 ...
5 [root@li250-193 Python-2.7.4]# make
6 ...
7 [root@li250-193 Python-2.7.4]# make install
8 ...

看看新版本Python是否可以使用Tkinter?

[root@li250-193 Python-2.7.4]# ./python

Python 2.7.4 (default, Apr 12 2013, 08:03:09)

[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import Tkinter      

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

  File "/root/Python-2.7.4/Lib/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

>>>

提示找不到tkinter模块?看看旧版的是不是正常

root@li250-193 Python-2.7.4]# find /usr -name *tkinter.so
/usr/lib64/python2.6/lib-dynload/_tkinter.so

找到一个,在2.6旧版本的目录下,估计是因为新版本库指向问题。于是认真读了README说明。重新配置安装

三、正确安装新版Python

首先修改Setup.dist文件

_tkinter _tkinter.c tkappinit.c -DWITH_APPINIT \
-L/usr/local/lib \
-I/usr/local/include \
-ltk8.5 -ltcl8.5 \
-lX11

以上第四行

-ltk8.5 -ltcl8.5 默认是 8.2 ,请你系统实际tcl/tk版本修改

[root@li250-193 Python-2.7.4]# rpm -qa | grep ^tk
tk-8.5.7-5.el6.x86_64
tkinter-2.6.6-36.el6.x86_64
[root@li250-193 Python-2.7.4]# rpm -qa | grep ^tcl
tcl-8.5.7-6.el6.x86_64

我系统中装的是8.5,所以这里我改成了8.5

保存退出

安装tck-devel、tk-devel


1

[root@li250-193 Python-2.7.4]# yum -y install tcl-devel tk-devel

开始配置安装


1

2

3

4

5

6

7

[root@li250-193 Python-2.7.4]# ldconfig

[root@li250-193 Python-2.7.4]# ./configure

...

[root@li250-193 Python-2.7.4]# make

...

[root@li250-193 Python-2.7.4]# make install

...

看下新版Python是否可以使用tkinter模块


1

2

3

4

5

6

[root@li250-193 Python-2.7.4]# ./python

Python 2.7.4 (default, Apr 12 2013, 08:49:11)

[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import Tkinter

>>>

已经没问题,旧版再看看


1

2

3

4

5

6

[root@li250-193 Python-2.7.4]# /usr/bin/python2.6

Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)

[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import Tkinter

>>>

也没问题

如果直接敲入python -V查看版本是不是最新的,如果不是可以这么干:

which出python命令路径


1

2

[root@li250-193 Python-2.7.4]# which python

/usr/local/bin/python

cp 过去


1

[root@li250-193 Python-2.7.4]# cp python /usr/local/bin/python

四、升级Python引起yum版本无法使用的问题解决

不少童鞋安装后就

cp python /usr/bin/python

导致yum时就提示


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

[root@lee ~]# yum

There was a problem importing one of the Python modules

required to run yum. The error leading to this problem was:

 

   No module named yum

 

Please install a package which provides this module, or

verify that the module is installed correctly.

 

It's possible that the above module doesn't match the

current version of Python, which is:

2.7.4 (default, Apr  9 2013, 17:12:56)

[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]

 

If you cannot solve this problem yourself, please go to

the yum faq at:

  http://yum.baseurl.org/wiki/Faq

   

 

[root@lee ~]#

因为yum头部默认制定python脚本的路径就是

#! /usr/bin/python

你把旧版的python替换后就是用不了,不知道为何新版Python不能被yum识别,目前唯一最好解决的方法就是修改yum头部声明

改成

#! /usr/bin/python2.6

即可,这里的python2.6是我centos默认版本,大家的默认版本是多少请按实际情况修改即可

时间: 2024-10-31 07:21:42

Linux升级Python提示Tkinter模块找不到解决的相关文章

Python升级提示Tkinter模块找不到的解决方法_python

一.安装tkinter在Linux中python默认是不安装Tkinter模块, 复制代码 代码如下: [root@li250-193 ~]# python Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18) [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2 Type "help", "copyright", "credits" or "lic

linux升级Mysql提示conflicts with file from package解决方法

首先发现不兼容包,所以我们要移除冲突的libs包,然后再去安装!  代码如下 复制代码 rpm -e --nodeps mysql-5.0.95-5.el5_9.x86_64 或者使用 yum -y remove mysql-libs-5.0.95* 然后我们安装mysql5.1就好了 rpm -ivh mysql-5.1.58-jason.1.i386.rpm 不推荐安装mysql5.5,第一队程序的兼容不是很好,队centos的兼容也不是很好! 前面有一个VPS在测试的时候就会出现了程序的不

python提示No module named images的解决方法_python

本文讲述了python提示No module named images的解决方法,非常实用!分享给大家供大家参考.具体方法如下: 出现提示:ImportError: No module named images 表示找不到images模块 可将: import images 替换为: import wx.py.images as images 将: images.getNewBitmap 替换为: images.getPyBitmap() 即可解决问题. 希望本文所述对大家的Python程序设计

Linux 升级 Python 至 3.x

简述 CentOS 7 中默认安装了 Python,版本比较低(2.7.5),为了使用新版 3.x,需要对旧版本进行升级. 由于很多基本的命令.软件包都依赖旧版本,比如:yum.所以,在更新 Python 时,建议不要删除旧版本(新旧版本可以共存). 简述 查看 Python 版本号 下载新版本 解压缩 安装配置 编译 安装 验证 设置 3x 为默认版本 配置 yum 查看 Python 版本号 当 Linux 上安装 Python 后(默认安装),只需要输入简单的命令,就可以查看 Python

Win8升级Win10提示错误代码800703f1问题处理,800703f1原因分析

1.我们在电脑按看好Win+X键 然后在弹出菜单点击"命令提示符(管理员)"意思是以管理员形式运营命令模式; 2.在cmd界面,我们输入 net stop wuauserv,回车; 3.然后定位到系统的 C:\Windows\SoftwareDistribution,将SoftwareDistribution重命名为SoftwareDistributionOld; 4.在命令提示符窗口中接着输入net start wuauserv,回车; 5.之后重新启动计算机即可. 升级Win10提

python下paramiko模块实现ssh连接登录Linux服务器

  本文实例讲述了python下paramiko模块实现ssh连接登录Linux服务器的方法.分享给大家供大家参考.具体分析如下: python下有个paramiko模块,这个模块可以实现ssh登录linux服务器,下面贴出代码,注意,我在centos5.6下,python2.6.5,paramiko-1.7的版本下测试成功. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #!/usr/bin/env python import paramiko hostname='17

linux下python的升级和安装软件时遇到对python2.4的依赖问题

python的升级: *************************************************************************************************************** 1.查看python的版本 (1).[root@localhost ~]# python  -V     Python 2.4.3 由此可知CentOS默认的python是2.4.3的,需要将python2.4升级到2.6版本 2.下载Python2.6

Python中使用Tkinter模块创建GUI程序实例_python

使用Tkinter模块来创建简单的GUI程序. Tkinter的Widgets有:Button.Canvas.Checkbutton.Entry.Frame.Label.Listbox.Menu.Menubutton.Message.Radiobutton.Scales.Scrollbar.TEXT.Toplevel等. 例: 复制代码 代码如下: # This program displays an empty window. import Tkinter def main():   main

【转载】据说是python常用的模块

difflib python diff比较模块 datetime python 处理日期与时间的模块 chardet 字符串/文件 编码检测(很好用) adodb:我们领导推荐的数据库连接组件 bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework ctypes:用来调用动态链接库 DBUtils:数据库连接池 django:一个WEB framework docutils:用来写文档的 dpkt