在Ubuntu 12.04上安装wxPython

16
问题: 我在Ubuntu 12.04上安装wxPython遇到了问题。我希望找到一种简单明了的方法来解决这个问题。

我的尝试: 我目前找到的最相关的说明可以在这里找到: http://wiki.wxpython.org/InstallingOnUbuntuOrDebian

这些说明的问题是,在Precise 12.04中没有可用的选择。显示的最新发行版是Natty 11.4。从我所能找到的资料来看,正确的方法是手动构建debian软件包,这在这里得到了解释: http://wiki.wxpython.org/BuildingDebianPackages

在尝试此操作并最终键入命令'fakeroot debian/rules binary'时,我会收到错误消息:

debian/rules:14: /usr/share/quilt/quilt.make: 没有那个文件或目录
pyversions: 在控制文件中缺少 X(S)-Python-Version,回退到 debian/pyversions
pyversions: 缺少 debian/pyversions 文件,回退到受支持的版本
make: *** 没有指定目标和没有找到 makefile。 停止。

我似乎无法解决这个错误,也找不到其他适用于我的资源。 我想在这里发布更多链接,但由于我是新手,垃圾邮件过滤器阻止了我这样做。

结论:有人知道如何在Ubuntu 12.04 Precise上正确安装wxPython的简单解决方案吗?

更新:我尝试使用apt-get命令“sudo apt-get install python-wxgtk2.8”,并收到以下消息(看起来很好):

阅读软件包列表...完成
构建依赖关系树

阅读状态信息...完成
python-wxgtk2.8已经是最新版本。
以下软件包已自动安装,现在不再需要:
language-pack-zh-hans yaml-cpp language-pack-kde-en language-pack-kde-zh-hans language-pack-kde-en-base language-pack-zh-hans-base language-pack-kde-zh-hans-base
使用'apt-get autoremove'命令来卸载它们。
0个软件包已升级,0个新软件包已安装,0个软件包将被删除且173个未升级。
但是一旦我尝试运行某些东西,例如'python test_gui.py',我会得到以下错误:
Traceback (most recent call last):
File "test_gui.py", line 1, in
import wx
ImportError: No module named wx

我尝试解决这些错误,并成功找到了这个资源,但是没有找到任何有用的信息。因此,在尝试了所有这些方法之后,我进行了更多搜索,并找到了这个这个资源。 - John Zeller
而且,我能找到的唯一有点相关的Stack Overflow帖子是这个(https://dev59.com/Lm435IYBdhLWcg3w9E9Y),但它只适用于Mac OSX,并且是关于一个单独的错误。 - John Zeller
7个回答

35

好的。所以我找到了一种方法。只需要在终端中运行以下命令:

sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-doc wx2.8-examples wx2.8-headers wx2.8-i18n

大功告成!它能正常工作了!


比起被接受的回答更容易,它告诉我找不到wxwidgets2.8的源程序包。 - user426364
这对我没用:Ubuntu 12.10,Python2.6。$python -c "import wx" Traceback (most recent call last): File "<string>", line 1, in <module>, File "wx/init.py", line 45, in <module>, from wx._core import *, File "wx/_core.py", line 4, in <module>, import core, ImportError: 没有名为_core_的模块。 - Jonathan Hartley

21

好的,我成功解决了它。结果是组合了几个步骤。

  1. 首先确定您已安装Python
  2. 使用以下命令安装wxGTK 2.8:sudo apt-get install python-wxgtk2.8
  3. 运行命令:apt-get source -d wxwidgets2.8
  4. 现在运行:dpkg-source -x wxwidgets2.8_2.8.12.1-6ubuntu2.dsc
  5. cd wxwidgets2.8-2.8.12.1
  6. cd wxPython
  7. 现在运行命令:sudo python setup.py install
  8. wxPython和wxWidgets现在已成功安装!

4
需要以下依赖关系:dpkg-dev、build-essential、swig、python2.7-dev、libwebkitgtk-dev、libjpeg-dev、libtiff-dev、freeglut3、freeglut3-dev、libgtk2.0-dev、libsdl1.2-dev、libgstreamer-plugins-base0.10-dev(来源:http://wiki.wxpython.org/CheckInstall)。 - joe_zeroh
5
太棒了,谢谢!顺便说一下,对于我来说,最后一个命令发出了一个错误:In file included from src/helpers.cpp:16:0: include/wx/wxPython/wxPython_int.h:19:19: fatal error: wx/wx.h: No such file or directory compilation terminated. error: command 'gcc' failed with exit status 1。但似乎你可以安全地忽略它。wxPython 对我而言很好用,尽管最后输出看起来有些“可怕”... - evadeflow
和evadeflow一样的经历,但是我不得不重新启动终端/Python等才能使它工作。 - Mike
如果你想在虚拟环境中安装(你为什么要做其他的事情呢?),那么请用“python setup.py sdist”替换第7步,然后你可以使用pip在任何你喜欢的地方安装生成的dist/xxx.tar.gz。 - Jonathan Hartley

9

完美运行。谢谢! - Nimajen

3
您也可以通过Pip安装它,但需要对安装命令进行微小的修改从wxPython网站获取: 由于Linux发行版之间存在差异(主要是默认安装的核心库的不同版本,以及平台架构等),因此除非它们能够在PEP 513的约束条件下工作,否则无法在PyPI上托管Linux的二进制wheel文件。不幸的是,试图将wxPython钉入manylinux1洞中并不成功。也许manylinux2会更合适。与此同时,如果您有一个与位于wxPython Extras linux文件夹下构建轮子的Linux相似的Linux,则可以使用它们而不需要自己构建轮子。
由于存在各种选项,例如发行版和wx端口(GTK2或GTK3),因此文件不能全部位于同一个文件夹中以便pip轻松访问。这只是意味着您需要进一步查找URL以提供给pip。例如,要获取Ubuntu 16.04(和16.10、LinuxMint 18以及可能其他版本)的GTK3 wxPython构建,您可以使用以下pip命令:
pip install -U -f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-16.04 wxPython

1

首先应安装gtk3

$sudo apt-get libgtk-3-dev

如果您在Python3上安装wxpython时遇到问题,请使用以下命令安装wxpython。

$ pip install -U -f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-16.04 wxPython

通过这个命令,您可以安装最新的wxPython4版本。如果您使用的是Windows或macOS操作系统。
$ pip install -U wxpython

0
在Ubuntu 12.04.5上,我不得不使用所有这些。
apt-get install python-wxgtk2.8 python-wxtools wx2.8-doc wx2.8-examples wx2.8-headers wx2.8-i18n python-wxversion libwxbase2.8-0 libwxgtk2.8-0

-1

我已经成功安装了wxpython,按照以下方式进行(也适用于ubuntu 12.04):

    1. 软件包和存储库元数据都是数字签名的,因此您需要将密钥导入到apt的受信任密钥列表中,以免收到有关它的警告。
    1. 将这些行添加到您的/etc/apt/sources.list文件中
    1. 运行此命令以更新软件包元数据的本地副本。

    sudo apt-get update

    1. 现在,您可以使用喜欢的软件包选择工具来安装或升级wxWidgets和wxPython软件包。以下是使用apt-get的方法:

    sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n

参考链接:

http://wiki.wxpython.org/InstallingOnUbuntuOrDebian


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接