使用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便可!

相關文章
相關標籤/搜索