在AWS EC2实例上安装并使tkinter工作

时间:2013-09-09 18:58:37

标签: python python-3.x amazon-ec2 tkinter

我拼命想让我的EC2实例上的tkinter工作。

我只想在python中执行这一行:

from tkinter import * 

或者这个旧版本的版本,因为我在python 3.x之前理解了你必须使用大写字母T

from Tkinter import *

现在这两个命令都返回:

ImportError: No module named _Tkinter

以下是我采取的步骤以及我在研究中发现的步骤:

  • 当前在我的实例上运行的python版本是python 2.6.8,认为tkinter可能没有附带此版本我决定使用此http://www.hosting.com/support/linux/installing-python-3-on-centosredhat-5x-from-source/将python版本安装到3.2(保持2.6.8)

  • 然后运行python 3.2我遇到了同样的问题,它告诉我没有名为tkinter的模块。

  • 然后我尝试使用许多不同的命令安装tkinter:

    yum install tkinter

    yum install Tkinter

    yum install python-tk

    yum install python3-tk

    yum install tk-devel

    yum install gtk2-devel

    yum install pygtk2-devel

所有这些都给了我相同的结果:

No package (name of the package) available.

另外在/ opt中我的python 3.2文件夹(我安装的第二个文件夹)中有一个名为tkinter的文件夹,但似乎某种程度上python3看不到它。

我错过了什么?我在python中时不能导入tkinter吗?

2 个答案:

答案 0 :(得分:3)

Tkinter需要显示器。除非您能以某种方式访问​​AWS实例上的桌面,否则您将无法加载tkinter,更不用说使用它了。

答案 1 :(得分:1)

在之前的答案之后,我意识到为什么它不起作用所以我使用EC2 Ubuntu实例并执行以下操作:

  export DEBIAN_FRONTEND=noninteractive
  sudo -E apt-get update
  sudo -E apt-get install -y ubuntu-desktop
  sudo add-apt-repository ppa:freenx-team
  sudo apt-get update
  sudo aptitude install -y freenx
  wget https://bugs.launchpad.net/freenxserver/+bug/576359/+attachment/1378450/+files/nxsetup.tar.gz
  tar -xvf nxsetup.tar.gz
  sudo cp nxsetup /usr/lib/nx/nxsetup
  sudo /usr/lib/nx/nxsetup --install 

然后在被要求输入密码时说不,并且:

  sudo vi /etc/ssh/sshd_config and set PasswordAuthentication to yes
  sudo /etc/init.d/ssh restart
  sudo passwd ubuntu
  sudo apt-get install gnome-session-fallback

完成此操作后,我在本地计算机上安装了NX客户端。 这一切都归功于this page

连接到我的新服务器,我可以像这样安装python-tk:

 sudo apt-get install python-tk

现在我可以在我的实例上使用tkinter:)