1. 程式人生 > >QtCreator的pro檔案的一個通用配置

QtCreator的pro檔案的一個通用配置

  • #-------------------------------------------------
    #
    # PS:應將此配置放置在pro檔案的最後, 否則可能會不起作用
    #
    # 以下配置為程式輸出目錄配置模板, 根據需要自行修改
    # 其中, 預設認為整個工程使用SubDir工程, 且子工程為非SubDir工程.
    # 如有不同, 請根據情況進行修改
    #
    #
    # 主要就是配置 TARGET(目標名字) 以及 DESTDIR(目標目錄), DLLDESTDIR(動態庫自動複製目錄)
    # 將TARGET在debug狀況下加上d字尾
    # 將DESTDIR設定到bin目錄下,而在目標為動態庫時修改為放入lib目錄下
    # 將DLLDESTDIR設定為bin目錄, 用於將動態庫的自動釋出複製
    #
    # 配置後, release以及debug目錄將會出現在目標路徑的output資料夾下
    # 並且會將子工程的ui生成檔案放入子工程相應的ui目錄下
    #
    #-------------------------------------------------

    #設定UI檔案目錄
    UI_DIR = ./ui

    CONFIG(debug, debug|release) {
      #設定debug配置下編譯生成檔案的路徑
      TARGET = $$join(TARGET,,,d)   #為debug版本生成的檔案增加d的字尾

      contains(TEMPLATE, "lib") {
        DESTDIR = ../output/debug/lib        #將庫放在lib資料夾下
        DLLDESTDIR = ../output/debug/bin     #將動態庫自動拷貝至bin目錄下
      } else {
        DESTDIR = ../output/debug/bin        #將應用程式放在bin目錄下
      }
      OBJECTS_DIR = ./debug/obj     #將生成的物件檔案放在專門的obj資料夾下
      MOC_DIR = ./debug/moc         #將QT自動生成的物件放在moc資料夾下
    } else {
      #設定release配置下編譯生成檔案的路徑

      contains(TEMPLATE, "lib") {
        DESTDIR = ../output/release/lib        #將庫放在lib資料夾下
        DLLDESTDIR = ../output/release/bin     #將動態庫自動拷貝至bin目錄下
      } else {
        DESTDIR = ../output/release/bin        #將應用程式放在bin目錄下
      }
      OBJECTS_DIR = ./release/obj   #將生成的物件檔案放在專門的obj資料夾下
      MOC_DIR = ./release/moc       #將QT自動生成的物件放在moc資料夾下
    }