使用MetaSIP自动生成SIP封装C++到Python接口

    利用SIP将C++封装为Python,SIP采用手动书写,但对于比较庞大的工程手动书写sip文件就显得很苍白无力。QT利用MetaSIP这款工具生成sip文件,而后手动修改部分SIP文件,而后利用python书写 configuer.py配置文件生成Makefile文件,最后执行Make脚本将C++生成为Python。下面主要介绍MetaSIP安装以及配置 过程,以及利用如何利用MetaSIP生成SIP。html

1.安装python

1)  所需软件git

MetaSIP、Python3.x、Qt四、PyQt四、dip、sip、QScintilla二、GCCXML、cmake、mingwgithub

MetaSIP下载地址:http://www.riverbankcomputing.com/hg/shell

PyQt四、sip、QScintilla2都可以到http://www.riverbankcomputing.com/news下载函数

dip必定要采用http://www.riverbankcomputing.com/hg/的版本工具

GCCXML到http://gccxml.github.io/HTML/Index.html下载spa

2)安装命令行

MetaSIP只支持Python3.x,在安装其以前保证Python3.x和QT安装code

 a.  安装SIP(参照上篇利用sip封装C++)

 b.  安装PyQt4

python configure.py

make

make install

c. 安装QScintilla2

cd Qt4Qt5
qmake qscintilla.pro
make
make install

d. 安装dip

启动命令行工具,进入dip目录

make

pythonsetup.py install

注意:执行python setup.py install时,若是报以下错误


则查看dip目录下是否有VERSION文件(通常报错是没有的^_^),则新建一个VERSION,内容为56a217326678

e. 安装GccXml

GccXml的编译须要借助Cmake,安装时须要提早安装CMake,而后执行下面命令:

cmake ../gccxml -DCMAKE_INSTALL_PREFIX:PATH=/installation/path

make

make instal

f. 安装MetaSIP

make

makeinstall

注意:编译时候,若是报以下错误



则在MetaSIP目录下建立VERSION文件,其内容为b009740bb135

如上步骤,MetaSIP就安装完成了,启动命令窗口,msip -h,弹出如下窗口,则说明MetaSIP安装完成


2.利用MetaSIP生成SIP

启动命令窗口,输入 msip回车,则弹出如下窗口:


Edit中依次设置ModulesPlatformsVersions(Linux下很差截图有部分图片是window下截图)



点击New按钮,新建一个工程,而且选择上述步骤所设置的版本


而后以下图所示依次设置下面项


点击update按钮,而后点击scan按钮,将会扫描指定目录下的全部头文件,扫描后的结果以下所示:


选中具体头文件,File Header部分就会高亮,以下图所示



点击update按钮,而后点击parse按钮,就会将选中的头文件的类以及相关变量、命名空间等解析出来,以下图所示


在具体的类以及函数上单击右键,将Uncheck设置为check,而后保存文件,文件的后缀名为*.msp

启动命令窗口,进入*.msp文件所在目录,执行如下命令:

msip -g dir *.msp

dir:SIP文件生成目录

*.msp:msp文件路径

到此SIP文件则已经生成,只须要按照上篇文章所述,生成Python便可!

相关文章
相关标签/搜索