這裏要編譯的工程包含一個庫和一個可執行文件。可執行文件依賴於庫,因此要先編譯庫,編譯後庫放在lib目錄裏面,可執行文件放在bin目錄裏面。app
目錄結構以下:spa
全局的工程文件complex.pro在工程根目錄下,內容以下:.net
TEMPLATE = subdirs SUBDIRS = src app CONFIG += ordered
subdirs模板表示要編譯多個子目錄中的工程。CONFIG選項要求各個子工程按順序編譯,子目錄的編譯順序在SUBDIRS中指明。code
庫的工程文件在src目錄中,名爲src.pro, 內容以下:blog
TARGET表示編譯後的庫名字爲base,CONFIG += static表示編譯後的庫是靜態庫。DESTDIR設置編譯後的庫的位置。遞歸
庫編譯結束後就是可執行文件編譯了,工程文件在app目錄下的app.pro,內容以下:io
若是要編譯多個庫,多個可執行文件,或者多級目錄工程,能夠參照這個例子寫多個pro文件,遞歸而已,不是什麼難事。編譯
Reference:模板
Johan Thelin. Foundations of Qt Development. Apress 2007class
轉自:http://blog.csdn.net/high_high/article/details/7385585