ninsun的个人主页

http://www.qtcn.org/bbs/u/96534  [收藏] [复制]

ninsun

  • 6

    关注

  • 9

    粉丝

  • 61

    访客

  • 等级:侠客
  • 总积分:244
  • 男,1987-04-29

最后登录:2017-07-10

更多资料

日志

QtCreator的pro文件的一个通用配置

2011-10-11 17:32
  1. #-------------------------------------------------
    #
    # 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文件夹下
    }


就是这么一回事,在输出的目录之中额外增加了一个output目录,output目录下将会有release和debug两个子目录,每个子目录之中又会存在bin,lib两个目录。
其中,bin目录下会存在所有的可执行文件以及自动复制的dll(Linux下,动态链接库不会自动复制,很奇怪),lib目录下就是库(.lib文件和.dll文件,Linux下的.so文件等等……)
其实弄出个这个就是为了解决QtCreator终于支持的建立subdir工程但是生成的可执行文件以及动态库却分布的十分分散而弄的,还有将debug版本和release彻底分离而弄的。
只不过是为了一个很漂亮的输出目录罢了……


分类:qmake|回复:0|浏览:3986|全站可见|转载
 

下一篇: QtCreator中为文件添加版本号

上一篇:

Powered by phpwind v8.7 Certificate Copyright Time now is:05-15 00:43
©2005-2016 QTCN开发网 版权所有 Gzip disabled