Qt多工程多目录的编译案例.docx

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Qt多工程多目录的编译案例

写这篇文章的目的是为了让Qt像VC++那样,支持一个工程包含多个项目。即1个App+多个动态库。本案例以1个App+1个共享库为例:工程源码我已上传/detail/libaineu2004/7188655,欢迎下载!1、在D盘创建空文件夹qMulti?2、使用Qt Creator创建App应用程序:BigWay。注意:创建模板是App,存放路径是D:\qMulti创建完成后,请关闭当前项目。??3、使用Qt Creator创建共享库项目:SmallBoy。注意:创建模板是C++ lib,存放路径是D:\qMulti创建完成后,请关闭当前项目。?4、App和Lib创建完成之后,D:\qMulti的情况如下:我们手动新建一个文本文件D:\qMulti\qM,内容如下:TEMPLATE=subdirs#表示这个是Qt跨目录,由多个子项目(如1个应用程序+多个共享库)组成的大项目?SUBDIRS=SmallBoyBigWay#大项目包含的各个子项目,其中BigWay是应用程序,SmallBoy是共享库?CONFIG+=ordered#CONFIG选项要求各个子项目按顺序编译,子目录的编译顺序在SUBDIRS中指明到此为止,情况如下:?5、使用Qt Creator打开大项目qM,可以看到项目树形结构如下:(1)原始的BigW文件是这样的:#-------------------------------------------------##ProjectcreatedbyQtCreator2014-04-13T20:18:17##-------------------------------------------------?QT?????? +=coregui?greaterThan(QT_MAJOR_VERSION,4):QT+=widgets?TARGET=BigWayTEMPLATE=app??SOURCES+=main.cpp\??????? mainwindow.cpp?HEADERS? +=mainwindow.h?FORMS??? +=mainwindow.ui?我们将其修改为:#-------------------------------------------------##ProjectcreatedbyQtCreator2014-04-13T19:02:41##-------------------------------------------------?QT+=coregui#需要的Qt库?greaterThan(QT_MAJOR_VERSION,4):QT+=widgets?TARGET=BigWay#表示编译后的库名字为BigWay?TEMPLATE=app#表示项目是应用程序模式?DESTDIR=../bin#定义项目编译之后生成的结果文件的存放路径?win32{#表示Windows环境的特殊设置,这个大括号不能单独放在下一行,否则编译会报错??? LIBS+=../bin/SmallBoy.lib#包含项目需要用到的共享库}?unix{#表示Linux环境的特殊设置,这个大括号不能单独放在下一行,否则编译会报错??? LIBS+=../bin/libSmallBoy.so#包含项目需要用到的共享库,注意文件名多了关键字lib,扩展名是.so}?SOURCES+=main.cpp\#项目中的所有源文件的列表??????? mainwindow.cpp?HEADERS? +=mainwindow.h#项目中的所有头文件的列表?FORMS??? +=mainwindow.ui#项目中的所有.ui文件(由Qt设计器生成)的列表?(2)原始的SmallB文件是这样的:#-------------------------------------------------##ProjectcreatedbyQtCreator2014-04-13T20:24:55##-------------------------------------------------?QT?????? -=gui?TARGET=SmallBoyTEMPLATE=lib?DEFINES+=SMALLBOY_LIBRARY?SOURCES+=qsmallboy.cpp?HEADERS+=qsmallboy.h\??????? smallboy_global.h?unix{??? target.path=/usr/lib??? INSTALLS+=target}?我们将其修改为:#-------------------------------------------------##ProjectcreatedbyQtCreator2014

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档