青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

西城

指尖代碼,手上年華

聯系 聚合 管理
  20 Posts :: 0 Stories :: 62 Comments :: 0 Trackbacks
與一個大四的學生同做一個項目,源文件有幾十個,剛開始還在為寫makefile發愁,幸好找到了automake工具鏈,覺得真是省了不少事。
后來他跟我說他用的是qmake,比用automake更省了不少事。一比較,發現qmake確實是一個更好地選擇。

automake工具鏈比較復雜。一般要autoscan+修改configure.in+aclocal+寫Makefile.am+configure+make。很不容易上手,而且
容易出錯。automake提供了更為精細的控制,復雜但強大。但其實一般我們也用不了那么多的功能,而且中間生成的那些配置文件也不在
少數。這時候還要將源碼與makefile部分分離開來。一般的開源軟件就采用這種方法,文件層次清楚,易于管理。但是一般的很少的文件
的話,我覺得用qmake就足夠了,易于上手,也不易出錯。

qmake一般是qmake -project/qmake/make三步,中間需要適當地修改生成的*.pro文件,然后就差不多了。qmake -project主要就是用
來生成*.pro文件。主要做的就是讀入當前目錄的源文件。一些常用的配置變量如下:

VariableContents
CONFIGGeneral project configuration options.
DESTDIRThe directory in which the executable or binary file will be placed.
FORMSA list of UI files to be processed by uic.
HEADERSA list of filenames of header (.h) files used when building the project.
QTQt-specific configuration options.
RESOURCESA list of resource (.rc) files to be included in the final project. See the The Qt Resource System for more information about these files.
SOURCESA list of source code files to be used when building the project.
TEMPLATEThe template to use for the project. This determines whether the output of the build process will be an application, a library, or a plugin.
變量之間可以相互賦值比如。 TEMP_SOURCES = $$SOURCES

Template變量比較重要:用來決定所建工程的類型:
TemplateDescription of qmake output
app (default)Creates a Makefile to build an application.
libCreates a Makefile to build a library.
subdirsCreates a Makefile containing rules for the subdirectories specified using the SUBDIRSvariable. Each subdirectory must contain its own project file.
vcappCreates a Visual Studio Project file to build an application.
vclibCreates a Visual Studio Project file to build a library.
vcsubdirsCreates a Visual Studio Solution file to build projects in sub-directories.
一般用的都是app。

再說上面的config變量,內置的有:
OptionDescription
releaseThe project is to be built in release mode. This is ignored if debug is also specified.
debugThe project is to be built in debug mode.
debug_and_releaseThe project is built in both debug and release modes.
debug_and_release_targetThe project is built in both debug and release modes. TARGET is built intoboth the debug and release directories.
build_allIf debug_and_release is specified, the project is built in both debug and release modes by default.
autogen_precompile_sourceAutomatically generates a .cpp file that includes the precompiled header file specified in the .pro file.
orderedWhen using the subdirs template, this option specifies that the directories listed should be processed in the order in which they are given.
warn_onThe compiler should output as many warnings as possible. This is ignored ifwarn_off is specified.
warn_offThe compiler should output as few warnings as possible.
copy_dir_filesEnables the install rule to also copy directories, not just files.

debug_and_release建立兩個版本。config還可以加上qt,thread,X11等用來指定建立相應的工程類型。
如果是qt工程的話,QT變量就是一個需要關注的對象。當用到相應的庫時,就要加上相應的名字比如:
OptionFeatures
core (included by default)QtCore module
gui (included by default)QtGui module
networkQtNetwork module
openglQtOpenGL module
sqlQtSql module
svgQtSvg module
xmlQtXml module
xmlpatternsQtXmlPatterns module
qt3supportQt3Support module

常用的就是core,gui.其他的用到時加上就行。
另外一個比較重要問題就是QT與其他庫的融合,LIBS和INCLUDEPATH可以做到這一點??疵志椭榔渥饔?。
和Gcc命令行參數的用法類似。


qmake也有一些內置的函數用來提供更為強大的功能。常用到的有include,可以用來包含其他的工程文件,類似于C的頭文件。還有條件控制類的,如:
win32 {      SOURCES += paintwidget_win.cpp  }
win32就是一個條件。甚至還有循環控制語句:
 EXTRAS = handlers tests docs  for(dir, EXTRAS) {      exists($$dir) {          SUBDIRS += $$dir      }  }
這樣算下來,其實qmake也挺復雜的,不過相對于automake來說,還是很容易的。


posted on 2012-04-01 12:30 西城 閱讀(2263) 評論(3)  編輯 收藏 引用 所屬分類: Linux

Feedback

# re: qmake與automake 2012-04-01 13:39 yugi.fanxes
可以嘗試下 waf 或者 cmake  回復  更多評論
  

# re: qmake與automake 2012-04-01 13:43 墨魂
@yugi.fanxes
多謝  回復  更多評論
  

# re: qmake與automake 2012-04-01 17:32 空明流轉
CMake, Scons,都可以。不過CMake有些bug,Scons bug更多。。。  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美激情精品久久久六区热门| 亚洲欧美电影在线观看| 欧美一区国产一区| 国产精品夜夜嗨| 久久久久久久性| 久久只精品国产| 在线观看成人小视频| 亚洲永久在线观看| 欧美一级片久久久久久久| 国产真实久久| 欧美激情在线免费观看| 欧美精品一卡二卡| 午夜国产精品影院在线观看| 午夜精品在线视频| 亚洲国产欧美日韩| 亚洲精品视频免费| 欧美性色视频在线| 免费成人黄色| 欧美日韩高清在线播放| 久久国产乱子精品免费女 | 亚洲影院高清在线| 欧美在线观看日本一区| 永久91嫩草亚洲精品人人| 亚洲激情偷拍| 国产精品日本一区二区| 久久一二三区| 欧美日本免费| 久久欧美肥婆一二区| 欧美日韩国产成人在线91| 校园春色综合网| 欧美福利电影网| 久久精品综合| 国产精品国色综合久久| 欧美高清在线一区| 国产日韩欧美一区二区三区在线观看| 欧美激情亚洲另类| 国产一区二区三区久久久| 亚洲韩国日本中文字幕| 国产亚洲亚洲| 亚洲深夜福利在线| 亚洲免费激情| 美女被久久久| 免费不卡中文字幕视频| 国产精品久在线观看| 亚洲国产综合在线看不卡| 国产欧美午夜| 亚洲一区二区三区在线播放| 亚洲精品国精品久久99热一| 欧美一区二区在线免费播放| 午夜免费日韩视频| 久久久免费av| 国产啪精品视频| 亚洲一区三区电影在线观看| 99re在线精品| 欧美成人免费全部观看天天性色| 久久婷婷蜜乳一本欲蜜臀| 国产精品色午夜在线观看| 一区二区成人精品| 中文国产亚洲喷潮| 欧美日本网站| 日韩西西人体444www| 亚洲免费电影在线观看| 欧美高清你懂得| 亚洲欧洲日产国码二区| 亚洲国产精品久久人人爱蜜臀| 久久精彩免费视频| 久久超碰97人人做人人爱| 国产欧美日韩一区二区三区在线观看| 一区二区三区日韩在线观看| 亚洲一区二区三区免费在线观看| 欧美日韩在线高清| 99国产精品99久久久久久粉嫩| 9国产精品视频| 欧美日韩1080p| 一本色道久久88综合亚洲精品ⅰ | 免费不卡在线视频| 亚洲人成精品久久久久| 欧美成人高清| 夜夜夜久久久| 午夜精品久久久久久久蜜桃app | 国产精品久久久久永久免费观看| 亚洲一区二区三区午夜| 久久国产毛片| 亚洲人精品午夜| 欧美日本高清视频| 亚洲一二三区精品| 久久午夜激情| 亚洲精品久久久一区二区三区| 欧美精品一区二区三区视频| 一区二区三区高清在线观看| 久久成人一区二区| 亚洲国产一区二区精品专区| 欧美日韩国产色视频| 亚洲一区二区三区四区五区黄| 久久久久久亚洲精品不卡4k岛国| 在线观看欧美成人| 欧美精品偷拍| 久久超碰97人人做人人爱| 亚洲国产高清一区二区三区| 亚洲欧美激情诱惑| 一区在线播放视频| 欧美色视频一区| 久久精品二区三区| 夜夜嗨av一区二区三区四区| 久久久久国内| 一区二区日韩免费看| 国模精品娜娜一二三区| 欧美日韩精品久久久| 久久国产精品久久久久久电车| 亚洲精品美女免费| 久久久久久伊人| 亚洲天堂av在线免费| 136国产福利精品导航网址| 欧美日韩综合| 免费日韩成人| 久久国产精品99久久久久久老狼| 日韩一级欧洲| 亚洲国产精品成人一区二区 | 久久成人免费电影| 一区二区激情视频| 亚洲高清资源| 狠狠色狠狠色综合系列| 欧美日韩在线一二三| 嫩模写真一区二区三区三州| 欧美一区二区三区四区在线观看地址 | 韩国av一区二区三区| 欧美日本一区二区三区| 久久美女性网| 欧美在线免费视屏| 亚洲一品av免费观看| 亚洲精品一区在线观看| 欧美高清在线精品一区| 狼人天天伊人久久| 久久免费精品视频| 欧美一区二区三区在线观看| 亚洲午夜激情在线| 99国产精品久久久久久久| 亚洲国产高清一区| 亚洲高清在线观看| 亚洲国产精品成人综合| 精品成人一区二区| 极品中文字幕一区| 黄色亚洲免费| 一区二区三区无毛| 在线免费观看日本一区| 在线观看欧美亚洲| 亚洲国产精品成人综合色在线婷婷| 狠狠综合久久| 在线观看国产成人av片| 影音先锋亚洲一区| 亚洲美女av网站| 亚洲视频导航| 亚洲自拍高清| 久久福利资源站| 久久免费视频这里只有精品| 久久久一区二区| 欧美电影资源| 亚洲精品美女| 亚洲欧美日韩国产中文在线| 亚洲欧美怡红院| 久久午夜视频| 欧美日韩成人在线观看| 欧美四级伦理在线| 国产日韩欧美高清| 在线国产亚洲欧美| 夜夜嗨av一区二区三区| 亚洲尤物视频网| 久久午夜精品| 日韩视频一区二区| 欧美在线综合视频| 欧美黄色一区二区| 国产精品视频一二| 在线精品国产成人综合| 一区二区不卡在线视频 午夜欧美不卡'| 99综合电影在线视频| 欧美在线观看一二区| 欧美激情综合| 午夜国产精品视频| 牛牛国产精品| 国产欧美精品在线播放| 亚洲黄色小视频| 先锋影音国产一区| 欧美激情亚洲一区| 欧美一级专区| 欧美日韩国产精品| 在线播放亚洲一区| 亚洲欧美日本精品| 亚洲电影在线| 欧美一区二区免费观在线| 欧美精品精品一区| 国内精品美女在线观看| 在线午夜精品| 欧美成人一区二区三区片免费| 亚洲午夜在线观看视频在线| 久久亚洲综合网| 国产日韩一区在线| 亚洲网址在线| 亚洲欧洲在线播放| 久久三级福利| 黄色精品一二区|