簡體   English   中英

在 Ubuntu 18.04 上 Python 3.7 上安裝 wxPython

[英]Installation of wxPython on Python 3.7 on Ubuntu 18.04

我在 Python 3.7.5 上安裝 wxPython4 時遇到問題

$ pip3 install wxpython
Defaulting to user installation because normal site-packages is not writeable
Collecting wxpython
  Using cached wxPython-4.1.0.tar.gz (65.8 MB)
Requirement already satisfied: pillow in ./.local/lib/python3.7/site-packages (from wxpython) (7.1.2)
Requirement already satisfied: six in ./.local/lib/python3.7/site-packages (from wxpython) (1.14.0)
Requirement already satisfied: numpy in ./.local/lib/python3.7/site-packages (from wxpython) (1.18.4)
Building wheels for collected packages: wxpython
  Building wheel for wxpython (setup.py) ... \


....

      File "/usr/lib/python3/dist-packages/Cython/Compiler/ExprNodes.py", line 2844
        await = None
              ^
    SyntaxError: invalid syntax

我不確定是什么問題。 在 Python3 中所做的更改,所以 await 現在是一個特殊的關鍵字。 它是否以某種方式將 Python2 與 Python3 混淆了?

如果我按照這里的建議做

https://askubuntu.com/questions/1073145/how-to-install-wxpython-4-ubuntu-18-04

首先,我通過以下方式找到了它:

sudo apt search python3-wx 我安裝了最新的 wxpython:

sudo apt-get install python3-wxgtk4.0 python3-wxgtk-webview4.0 python3-wxgtk-media4.0 如果您願意,也可以嘗試以這種方式安裝 synaptic。

我得到一個不同的錯誤

    In [1]: import wx                                                                                                                                                                                                                 
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-1-03faa7660341> in <module>
----> 1 import wx

/usr/lib/python3/dist-packages/wx/__init__.py in <module>
     15 # Import all items from the core wxPython module so they appear in the wx
     16 # package namespace.
---> 17 from wx.core import *
     18 
     19 

/usr/lib/python3/dist-packages/wx/core.py in <module>
     10 """
     11 
---> 12 from ._core import *
     13 
     14 #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

ModuleNotFoundError: No module named 'wx._core'

這可能是由於缺少依賴項。

我認為這是由於 Cython 0.26 和 Python 3.7 之間不兼容的問題。 請參閱有關SerpentAI的答案。

考慮使用 python 2.7 安裝它。 另外,保持你的 python 依賴很好地分離(如果你還沒有),因為如果你不這樣做,問題可能會由於依賴沖突而發生。 我是這樣安裝的:

sudo apt install python2.7
virtualenv --python=/usr/bin/python2.7 <path/to/new/virtualenv/>
cd <virtualenv path>
source bin/activate
pip install setuptools
pip install -U \
  -f https://extras.wxpython.org/wxPython4/extras/linux/gtk2/ubuntu-18.04 \
  wxPython

pip 也選擇了正確的版本進行安裝。 之后我安裝了 wxFormBuilder。 也沒有問題:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM