[發(fā)明專利]不同操作平臺之間的工程移植方法和裝置有效
| 申請?zhí)枺?/td> | 201310505413.0 | 申請日: | 2013-10-23 |
| 公開(公告)號: | CN104572231B | 公開(公告)日: | 2018-09-18 |
| 發(fā)明(設(shè)計)人: | 華剛;陳怡博;邵波 | 申請(專利權(quán))人: | 航天信息股份有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F8/76 |
| 代理公司: | 北京工信聯(lián)合知識產(chǎn)權(quán)代理有限公司 11266 | 代理人: | 黃曉軍 |
| 地址: | 100195 北京市*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 操作平臺 目標(biāo)文件 源文件 文本文件 移植 方法和裝置 工程文件 輸出結(jié)果 中間文件 重構(gòu) 編譯 腳本語言 重定向 出錯 分析 | ||
本發(fā)明提供了一種不同操作平臺之間的工程移植方法和裝置。該方法包括:用make集成編譯工具執(zhí)行l(wèi)inux/unix平臺下的C/C++工程的makefile文件,makefile文件執(zhí)行結(jié)束后得到輸出結(jié)果,將輸出結(jié)果重定向為一個文本文件;分析文本文件,將make集成編譯工具執(zhí)行makefile文件過程中處理的.o中間文件到.a目標(biāo)文件的對應(yīng)關(guān)系、.c源文件到.o中間文件的對應(yīng)關(guān)系找到,并獲取重構(gòu).a目標(biāo)文件所對應(yīng)的工程文件所需的所有源文件;利用腳本語言根據(jù)源文件進行自動重構(gòu),得到windows平臺下的.a目標(biāo)文件所對應(yīng)的工程文件。本發(fā)明實施例的不同操作平臺之間的工程移植方法避免了分析makefile文件,花費時間較短,實現(xiàn)方法簡便,不容易出錯,使得將linux/unix下的C/C++工程移植到windows下的codeblock工程等工程更為快捷方便。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機應(yīng)用技術(shù)領(lǐng)域,尤其涉及一種不同操作平臺之間的工程移植方法和裝置。
背景技術(shù)
linux/unix下的C/C++工程基本上都是用makefile文件里面定義的一系列的規(guī)則來組織的,且通過makefile來指定編譯的先后順序。若要將linux/unix下的C/C++工程移植到window平臺上時,通常需要分析makefile文件,提取源文件的組織結(jié)構(gòu),編譯順序等,然后再重組為windows平臺下的集成開發(fā)工具(比如codeblock)的工程。
Windows平臺上的開發(fā)工具基本上都是圖形化的集成開發(fā)環(huán)境,比如codeblock,在Windows平臺下的集成開發(fā)環(huán)境中,通過一個工程文件來組織工程中的所有的.c、.cpp、.h文件。而Linux/unix下的開發(fā)環(huán)境基本上都是通過makefile來組織這些文件。
現(xiàn)有技術(shù)中的一種將linux/unix平臺上的工程源代碼移植到windows平臺上的方法為:通過分析makefile的內(nèi)容來重組構(gòu)造Windows平臺下的集成開發(fā)環(huán)境的工程文件,比如codeblock的.cbp文件。
上述現(xiàn)有技術(shù)中的將linux/unix平臺上的工程源代碼移植到windows平臺上的方法的缺點為:由于makefile本身功能強大,就像一個Shell腳本一樣,可以執(zhí)行操作系統(tǒng)的命令,所以大部分的makefile都寫得極為復(fù)雜,并且組織結(jié)構(gòu)和編譯順序都是根據(jù)環(huán)境動態(tài)產(chǎn)生,這就造成通過分析makefile文件方法在平臺間移植重構(gòu)工程文件,十分麻煩費時且容易出錯。
發(fā)明內(nèi)容
本發(fā)明的實施例提供了一種不同操作平臺之間的工程移植方法和裝置,以實現(xiàn)有效地將linux/unix下的C/C++工程移植到windows下的工程。
本發(fā)明提供了如下方案:
一種不同操作平臺之間的工程移植方法,包括:
用make集成編譯工具執(zhí)行l(wèi)inux/unix平臺下的C/C++工程的makefile文件,所述makefile文件執(zhí)行結(jié)束后得到輸出結(jié)果,將所述輸出結(jié)果重定向為一個文本文件;
分析所述文本文件,將make集成編譯工具執(zhí)行所述makefile文件過程中處理的.o中間文件到.a目標(biāo)文件的對應(yīng)關(guān)系、.c源文件到.o中間文件的對應(yīng)關(guān)系找到,并獲取重構(gòu)所述.a目標(biāo)文件所對應(yīng)的工程文件所需的所有源文件;
利用腳本語言根據(jù)所述所有源文件進行自動重構(gòu),得到所述windows平臺下的.a目標(biāo)文件所對應(yīng)的工程文件。
所述make集成編譯工具利用gcc()編譯工具執(zhí)行l(wèi)inux/unix平臺下的C/C++工程的makefile文件。
所述windows平臺下的工程文件包括codeblock工程文件或者VC工程文件。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于航天信息股份有限公司,未經(jīng)航天信息股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310505413.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:輸入裝置、其輸入模式切換方法以及電腦裝置
- 下一篇:壓電振動片及壓電振動器





