zoukankan      html  css  js  c++  java
  • paip. sip module implements API v10.0 to v10.1 but the PyQt4.QtCore module requires API v9.2

    paip.RuntimeError: the sip module implements API v10.0 to v10.1 but the PyQt4.QtCore
    module requires API v9.2


    作者Attilax ,  EMAIL:1466519819@qq.com 
    来源:attilax的专栏
    地址:http://blog.csdn.net/attilax




    现象:
    运行eric5-5.3.7.zip      \ D:\eric5-5.3.7\eric\eric5.py




    环境:
    Python Version: 3.3.2




    原因:  eric5需要PyQt4..以及PyQt4需要sip v9.2  ...但是python加载的sip版本是10.1
    查看python加载的sip
    \Lib\site-packages\sip.pyd     好像是最新的pyqt5带的.




    解决:
    因为我的项目用到的是QT5。。但是由于 eric5需要PyQt4。 
    只好另外copy  D:/Python33到D:/Python334eric
    下载PyQt4-4.10.3-gpl-Py3.3-Qt4.8.5-x32.exe.安装到D:/Python334eric
    会自动重写 D:/Python334eric/\Lib\site-packages\sip.pyd 


    运行
    D:\Python334eric\Python.exe   D:\eric5-5.3.7\eric\eric5.pyw


    /sip是什么
    SIP是一个自动为C和C++库生成Python扩展模块的工具。为了方便开发PyQt,SIP于1998被“Riverbank Computing”公司创造出来。不过,SIP不专用于PyQt,而是适用于所有的C和C++库。
    使用SIP时,程序员首先要编写一个特殊的".sip"文件,使用类似于C++的语法在其中描述扩展模块所提供的类型与函数。然后用SIP将这个文件转化为C++代码。最终编译,与C、C++库链接后就成为Python扩展模块。".sip"文件类似于C、C++的头文件。根据需要,需要程序员用SIP定义的语法添加一些C++代码中没有的信息。因为SIP不支持完整的C++语法,所以不能直接使用C++的头文件作为".sip"文件。


    sip.exe位置:D:\Python33\Lib\site-packages\PyQt5\sip.exe 
    D:\Python33\Lib\site-packages\PyQt5\sip\下面是sip设置文件..例子:
    D:\Python33\Lib\site-packages\PyQt5\sip\PyQt5\QtCore\qfile.sip


    查看 当前sip版本. 
     D:/Python334eric/\Lib\site-packages\sip.pyd 
    在找到
    D:\Python33\Lib\site-packages\PyQt5\include\sip.h
    line71--209     表明版本号是 10.1




    ---ImportError: No module named 'sip'
    新不上D:\Python334eric\Lib\site-packages\sip.pyd  实际是个dll文件


    ---Failed to load platform plugin "windows". Available platforms are:
    D:\Python334eric\Lib\site-packages\pyqt4 版本不对.




    参考
    Python SIP使用总结-Linux频道-中国IT实验室
    Python SIP使用总结(Win&Linux通用) - sunny2038的专栏 - 博客频道 - CSDN.NET.htm



  • 相关阅读:
    docker pull 报错解决办法
    cobbler自动装机!
    centos7 日志定期清理
    【转载】python 模块
    0603 python 基础02
    0527 python 基础01
    0520 python
    160519 如何做自动化测试?
    SourceTree&Git部分名词解释
    sourceTree安装与使用
  • 原文地址:https://www.cnblogs.com/attilax/p/15199466.html
Copyright © 2011-2022 走看看