【问题标题】:ModuleNotFoundError: No module named 'sipdistutils' while install python-poppler-qt5ModuleNotFoundError:安装 python-poppler-qt5 时没有名为“sipdistutils”的模块
【发布时间】:2018-07-19 10:53:15
【问题描述】:

我一直在尝试安装python-poppler-qt4,但它显示ModuleNotFoundError: No module name sipdistutils 的错误。 当我尝试安装sipdistutils时,它再次显示错误。

错误信息

【问题讨论】:

    标签: python poppler


    【解决方案1】:

    我在这里发现了一个类似的问题:https://github.com/wbsoft/python-poppler-qt5/issues/14

    我认为sipdistutils 应该是sip 包的一部分。请验证您是否已安装:

    $ pip freeze | grep sip
    sip==4.19.1
    

    如果没有输出,请使用pip install sip 安装它。

    如果这不起作用,一些建议的解决方案:

    1. sip 的 pip 版本似乎没有安装 sipdistutils。要从源代码安装它,您可以这样做: wget https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.3/sip-4.19.3.tar.gz tar zxvf sip-4.19.3.tar.gz cd sip-4.19.3 python configure.py make make install

    2. 您可以从 Riverbank 的 mercurial 服务器(即 here)获取 sipdistutils.py。它是独立的。只需将其放入您的 Python 站点包文件夹中

    【讨论】:

      【解决方案2】:

      确实,使用sipdistutils 构建python 扩展不再是做事的方式。因此,绝对的解决方法是修改包的构建过程,但由于我无法控制它(尽管我可能会尝试找时间为项目做出贡献),我确实找到了解决方法。

      在我们的例子中,在 Ubuntu 20.04 上,我们使用 pyenv 和 virtualenv 插件为我们的应用程序创建虚拟环境,而正是在这些环境中我们遇到了问题。稍微挖掘了一下,发现如果你的构建路径中有三个源文件,它就可以工作:

      • sipdistutils.py 由 python3-sip-dev 提供(apt,v4.19.21)
      • sipconfig.py 由 python3-sip 提供(apt,v4.19.21)
      • sipconfig_nd8.py 由 python3-sip 提供(apt,v.419.21)

      注意:v4.19,这些文件在新版本的 sip 中不存在

      现在,如果我们使用 apt 安装的 python,只需使用 apt 安装就足够了,因为我们不是,我只是将这三个文件从它们的默认安装位置复制到我们通过 @ 使用的自定义路径987654331@.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-11-07
        • 1970-01-01
        • 2022-01-04
        • 1970-01-01
        • 2021-09-06
        • 2019-07-10
        • 1970-01-01
        • 2020-08-08
        相关资源
        最近更新 更多