paip. sip module implements API v10.0 to v10.1 but

发布时间:2017-09-09 10:53:52
paip. sip module implements API v10.0 to v10.1 but the PyQt4 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 版本不对.

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:潜江SEO http://qianjiang.4567w.com