999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

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

2010-04-16 01:55:38董慧妍江蘇省蘇州建設交通學校江蘇蘇州215104
科技傳播 2010年21期
關鍵詞:信息

董慧妍江蘇省蘇州建設交通學校,江蘇蘇州 215104

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

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

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

新文件內容為:

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

% ./test

執行程序了。

如果加后綴進行編譯

% make clean

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

制作實現對C程序聯合編譯的makefile文件類似,所要修改的地方是:

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

Makefile = target(目標)+dependencies(關聯)+command(命令)

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

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

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

QMAKESPEC環境變量

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

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

項目(.pro)文件

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

使用qmake創建一個項目文件

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

一個基本的項目文件包含關于應用程序的信息,比如,編譯應用程序需要哪些文件,并且使用哪些配置設置。

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

SOURCES = hello.cpp

HEADERS = hello.h

CONFIG += qt warn_on release

SOURCES = hello.cpp

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

SOURCES = hello.cpp main.cpp

當你已經創建好你的項目文件,生成Makefile就很容易了,你所要做的就是先到你所生成的項目文件那里然后輸入:

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

qmake -o Makefile hello.pro

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

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

[1]李善平,鄭扣根.Linux操作系統及實驗教程[M].北京:機械工業出版社,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
信息超市
大眾創業(2009年10期)2009-10-08 04:52:00
展會信息
展會信息
展會信息
展會信息
展會信息
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 日韩欧美国产中文| 国产无码在线调教| 美女视频黄又黄又免费高清| 亚洲系列中文字幕一区二区| 国产精品亚洲天堂| 国产精品福利社| 久久永久精品免费视频| 国产精品网曝门免费视频| 色香蕉影院| 色吊丝av中文字幕| AV不卡无码免费一区二区三区| 久久久国产精品免费视频| 91热爆在线| 丁香六月激情婷婷| 亚洲无码A视频在线| 亚洲欧美成aⅴ人在线观看 | 呦女精品网站| 国产日本欧美在线观看| 九色最新网址| 99性视频| 99青青青精品视频在线| 福利在线一区| 91年精品国产福利线观看久久| 亚洲精品综合一二三区在线| 亚洲欧美综合另类图片小说区| 青青青国产免费线在| www.youjizz.com久久| 国产午夜人做人免费视频中文| 亚洲av无码人妻| 国产黄色视频综合| 日韩无码真实干出血视频| 三上悠亚精品二区在线观看| аⅴ资源中文在线天堂| 亚洲精品成人片在线播放| 亚洲中文在线看视频一区| 91麻豆精品国产91久久久久| 国产成人喷潮在线观看| 国产成人亚洲无吗淙合青草| 国产一二视频| 国产精品无码影视久久久久久久| 欧美三级日韩三级| 国产主播喷水| 亚洲成人一区二区| 2020最新国产精品视频| 国产成人无码综合亚洲日韩不卡| 日本一区二区三区精品视频| 国产麻豆永久视频| 国产经典在线观看一区| 中文纯内无码H| 亚洲视频免| 欧美精品在线看| 久久动漫精品| 日韩在线播放中文字幕| 国产在线一区视频| 永久免费av网站可以直接看的| 欧美狠狠干| 欧美性色综合网| 久爱午夜精品免费视频| 国产精品久久久久久搜索| 伊人五月丁香综合AⅤ| 亚洲高清中文字幕在线看不卡| 中文成人无码国产亚洲| 亚洲一区国色天香| 扒开粉嫩的小缝隙喷白浆视频| 国产精品无码AⅤ在线观看播放| 国产日韩精品欧美一区喷| 内射人妻无码色AV天堂| 青青操视频在线| 亚洲欧美不卡中文字幕| 日本人妻丰满熟妇区| 国产丝袜啪啪| 亚洲天堂伊人| 国产成人综合亚洲网址| 成人中文字幕在线| 国产精品人成在线播放| 黄色一级视频欧美| 亚洲AV免费一区二区三区| 四虎成人精品| 国产精品永久久久久| 国产精品黄色片| 在线不卡免费视频| 国产精品亚洲五月天高清|