亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Q t中的M akefile文件編寫體會

        2010-04-16 01:55:38董慧妍江蘇省蘇州建設(shè)交通學(xué)校江蘇蘇州215104
        科技傳播 2010年21期
        關(guān)鍵詞:信息

        董慧妍江蘇省蘇州建設(shè)交通學(xué)校,江蘇蘇州 215104

        以C++編程為例。C編程類似。系統(tǒng)為RedHat Linux 7.2;桌面為KDE ;文本編輯器為kate。假定讀者編寫了兩個文件hello. cpp, world.cpp。hello.cpp為主程序,在工作目錄下建立一個新的子目錄”test”,再在test下建立一個”helloworld”的子目錄,這個目錄將作為存放hello這個程序及其相關(guān)文件的地方:

        將hello.cpp及world.cpp文件copy至helloworld目錄下。

        使用文本編輯器生成一個新文件,命名為makefile,無需加文件后綴。

        新文件內(nèi)容為:

        保存該文件。在命令行下打make即可實現(xiàn)對文件的聯(lián)合編譯。如果源程序沒有錯誤,編譯成功后,就可以在命令行打入

        % ./test

        執(zhí)行程序了。

        如果加后綴進(jìn)行編譯

        % make clean

        表示編譯完成后執(zhí)行rm *.o語句:刪除編譯過程中生成的中間文件。

        制作實現(xiàn)對C程序聯(lián)合編譯的makefile文件類似,所要修改的地方是:

        在makefile文件中,將g++以gcc代替,即修改相應(yīng)的編譯器(g++是C++的編譯器,而gcc是C的編譯器);并以后綴為.c的C源程序代替后綴為.cpp的C++源程序。

        Makefile = target(目標(biāo))+dependencies(關(guān)聯(lián))+command(命令)

        讀者可能已經(jīng)注意到,makefile文件實際上是由一些目標(biāo)、關(guān)聯(lián)和命令(或者說是動作)組合而成的規(guī)則集。Makefile是一個文本形式的數(shù)據(jù)庫,其中包含一些規(guī)則告訴make編譯哪些文件、怎樣編譯以及在什么條件下去編譯。每條規(guī)則包含以下內(nèi)容:一個“目標(biāo)體”(target),即make最終需要創(chuàng)建的東西。包含一個或多個“依賴體”(dependency)的列表,依賴體通常是編譯目標(biāo)體需要的其它文件為了從指定的依賴體創(chuàng)建除目標(biāo)體所需執(zhí)行的“命令”(command)的列表。在makefile文件中,出現(xiàn)命令的該行行首總是以制表符開始,而不是空格,這要注意。

        qmake是Trolltech公司創(chuàng)建的用來為不同的平臺和編譯器書寫Makefile的工具。 qmake是用來為不同的平臺的開發(fā)項目創(chuàng)建makefile的Trolltech開發(fā)一個易于使用的工具。qmake簡化了makefile的生成,所以為了創(chuàng)建一個makefile只需要一個只有幾行信息的文件。qmake可以供任何一個軟件項目使用,而不用管它是不是用Qt寫的,盡管它包含了為支持Qt開發(fā)所擁有的額外的特征。

        qmake基于一個項目文件這樣的信息來生成makefile。項目文件可以由開發(fā)者生成。項目文件通常很簡單,但是如果需要它是非常完善的。不用修改項目文件,qmake也可以為Microsoft Visual Studio生成項目。

        QMAKESPEC環(huán)境變量

        舉例來說,如果你在Windows下使用Microsoft Visual Studio,然后你需要把QMAKESPEC環(huán)境變量設(shè)置為win32-msvc。如果你在Solaris上使用gcc,你需要把QMAKESPEC環(huán)境變量設(shè)置為solaris-g++。

        在qt/mkspecs中的每一個目錄里面,都有一個包含了平臺和編譯器特定信息的qmake.conf文件。這些設(shè)置適用于你要使用qmake的任何項目,請不要修改它,除非你是一個專家。例如,假如你所有的應(yīng)用程序都必須和一個特定的庫連接,你可以把這個信息添加到相應(yīng)的qmake.conf文件中。

        項目(.pro)文件

        一個項目文件是用來告訴qmake關(guān)于為這個應(yīng)用程序創(chuàng)建makefile所需要的細(xì)節(jié)。例如,一個源文件和頭文件的列表、任何應(yīng)用程序特定配置、例如一個必需要連接的額外庫、或者一個額外的包含路徑,都應(yīng)該放到項目文件中。

        使用qmake創(chuàng)建一個項目文件

        qmake使用儲存在項目(.pro)文件中的信息來決定Makefile文件中該生成什么。

        一個基本的項目文件包含關(guān)于應(yīng)用程序的信息,比如,編譯應(yīng)用程序需要哪些文件,并且使用哪些配置設(shè)置。

        這里是一個簡單的示例項目文件:

        SOURCES = hello.cpp

        HEADERS = hello.h

        CONFIG += qt warn_on release

        SOURCES = hello.cpp

        這一行指定了實現(xiàn)應(yīng)用程序的源程序文件。在這個例子中,恰好只有一個文件,hello.cpp。大部分應(yīng)用程序需要多個文件,這種情況下可以把文件列在一行中,以空格分隔,就像這樣:

        SOURCES = hello.cpp main.cpp

        當(dāng)你已經(jīng)創(chuàng)建好你的項目文件,生成Makefile就很容易了,你所要做的就是先到你所生成的項目文件那里然后輸入:

        Makefile可以像這樣由“.pro”文件生成:

        qmake -o Makefile hello.pro

        對于Visual Studio的用戶,qmake也可以生成“.dsp”文件,例如:

        qmake -t vcapp -o hello.dsp hello.pro

        [1]李善平,鄭扣根.Linux操作系統(tǒng)及實驗教程[M].北京:機(jī)械工業(yè)出版社,1999,10.

        [2]St roustrup B. Learning Standard C++ as a New

        Language. C/C++ Users Journal,1999,5:43-54.

        猜你喜歡
        信息
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        展會信息
        中外會展(2014年4期)2014-11-27 07:46:46
        信息超市
        展會信息
        展會信息
        展會信息
        展會信息
        展會信息
        信息
        健康信息
        祝您健康(1987年3期)1987-12-30 09:52:32
        国产精品视频久久久久| 久久偷看各类wc女厕嘘嘘偷窃| 亚洲精品久久久久久久不卡四虎| 国内揄拍国内精品| 久久久久AV成人无码网站| 全部亚洲国产一区二区| 真实国产乱子伦精品视频| 国产成人麻豆精品午夜福利在线 | 大肉大捧一进一出好爽视频| 激情婷婷六月| 少妇极品熟妇人妻高清| 亚洲综合中文字幕综合| 99国产精品无码| 人妻AV无码一区二区三区奥田咲 | 日本经典中文字幕人妻| 穿着白丝啪啪的av网站| 一本色道无码道在线观看| 97成人精品| 男女男生精精品视频网站| 91精品国产综合久久熟女| 国产麻豆成人精品av| 成人片99久久精品国产桃花岛| 精品色老头老太国产精品| 亚洲成a∨人片在线观看无码| 国产欧美日韩久久久久| 久久亚洲av成人无码软件| 婷婷开心五月亚洲综合| 少妇性bbb搡bbb爽爽爽| 这里有精品可以观看| 日韩精品一区二区三区四区视频| 国产色视频一区二区三区不卡| 精品乱码久久久久久久| 日韩一区二区超清视频| 亚洲综合新区一区二区| 国产精品区一区二区三在线播放 | 亚洲精品6久久久久中文字幕| 国产在线观看一区二区三区av | 国产精品综合久久久久久久免费 | 亚洲中文字幕午夜精品| 天躁夜夜躁狼狠躁| 亚洲中文字幕无码不卡电影|