【问题标题】:import pygtk works but not import gtkimport pygtk 有效,但不能 import gtk
【发布时间】:2014-05-16 06:30:02
【问题描述】:

我在我的 centos 5.4 机器上配置 pygtk。但我面临一些问题。

我想把pygtk配置成Python 2.7(在centos 5中默认的python版本是Python 2.4)

所以我在本地空间安装了带有不同 --prefix 的 Python 2.7,然后安装了 pygobject2.28,然后安装了带有 --prefix="where python 2.7 installed" 的 pygtk2.24。

但是当我运行 python2.7 解释器时,我可以导入 pygtk,但是,当我尝试导入 gtk 时,它显示“没有名为 gtk 的模块。”

我已经将PYTHONPATH和PYTHON环境变量分别配置为python2.7/lib/site-packages和python2.7。

我的问题:

  1. 如果 pygtk 是 gtk 的包装器,那么当我能够导入 pygtk 时,为什么不能导入 gtk。
  2. python(或 pygtk)从哪里挑选 gtk?
  3. 我该如何解决上述问题!?

我尝试了 google 和其他堆栈溢出问题。但他们都没有回答上述问题。

【问题讨论】:

    标签: python-2.7 gtk centos pygtk


    【解决方案1】:

    我没有正确检查 ./configure 输出。问题是,我试图在不安装 cairo 和 pango 的情况下安装 gtk 和 pygtk。所以 pygtk 跳过了构建 gtk 包,因为它没有找到任何 cairo 包。 ./configure 脚本中提到了这一点,但我没有检查过。

    总结:

    要将pygtk配置为python需要遵循这些步骤

    install sqlite-devel #If sqlite needed
    install python(2.7)
    install gtk(2.24.0) -> requires glib(2.27.3), atk(1.29.2), cairo(1.8.10), pango(1.22.4), gdk-pixbuf(2.21.3)
    install pygtk(2.24.0) -> requires pygobject-2.28.3, pycairo(1.8.10)
    

    以上所有包都必须编译成相同的前缀,并且需要设置PYTHON和PATHONPATH环境变量。软件包的版本也起着重要作用。在括号中添加了对我有用的版本。

    安装一些软件包时有很多依赖项,所以我不得不使用 yum 安装以下软件包:libxext、librender、gettext、zlib、libgtk2-devel

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-22
      • 1970-01-01
      • 2021-11-01
      • 2021-01-12
      • 2019-01-21
      • 1970-01-01
      相关资源
      最近更新 更多