qmake介绍

一个Qt应用程序的编译大概需要执行3步: qmake -project、qmake、make。

其中qmake是Qt提供的编译工具,qmake有两个作用:

  1. 根据源文件生成平台无关的.pro文件
  2. 在根据.pro文件生成平台相关的makefile文件

测试步骤

  1. 测试环境ubuntu18.04+qt5+qt creator
  2. 首先我们用qt creator新建QWidget工程,取名myWidget,则向导帮助我们创建的文件如下。
  3. 为了验证qmake的使用,我们删除.pro文件和.pro.user两个文件,只保留main.cpp,widget.cpp,widget.h,widget.ui4个文件。

  1. 打开终端,cd到当前目录,执行qmake指令,生成.pro文件
$ qmake -project myWidget.pro

我们看到qmake已经帮我们生成了myWidget.pro文件,内容如下:

但是这里很奇怪,为什么qmake生成的.pro中没有QT += core gui widgets这可是我们要用到的Qt模块啊??!!手动添加一下吧,在INCLUDEPATH += .的下面一行~~

  1. 执行qmake指令,.pro文件生成平台相关的makefile文件,

    $ qmake
    

  1. 执行make指令,生成可执行程序,如下图已经生成了myWidget可执行程序。
$ make

  1. ./myWidget
    

ubuntu下Qt编程qmake的使用详解相关推荐

  1. 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)

    . 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...

  2. Ubuntu下千千静听Audacious的安装步骤详解

    UBUNTU下的类似千千静听的软件有好多,不过比较OK的有XMMS.Audacious.BMP.一直在用XMMS,进来安装Audacious,发现也不错,而且解决列表乱码问题相比XMMS也比较简单,并 ...

  3. ubuntu下安装三维渲染引擎OSG详解

    零.前言 OpenSceneGraph是一个开源的.跨平台的三维引擎,被广泛的应用在可视化仿真.游戏.虚拟现实.三维重建等领域,采用标准C++和OpenGL编写而成,能够更加快速.便捷地创建高性能.跨 ...

  4. Ubuntu php安装过程,Ubuntu下Apache+PHP+MySQL安装过程详解

    首先声明:该服务器架设过程仅在本机测试 1. 切换到管理员身份执行指令为:sudo root 2.安装Apache2 运行以下命令安装:apt-get install apache2 若要启动apac ...

  5. Ubuntu16.04下制作deb包的方法详解

    CSDN GitHub Ubuntu下制作deb包的方法详解 AderXCoding/system/tools/build_deb 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可 ...

  6. Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法

    Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法 最近由于老师要求要在Ubuntu下QT上进程多线程服务器的开发,虽然只是单纯的调用qt的network模块,但是为了避免麻烦,我 ...

  7. qt程序在Linux下字体乱了,解决linux/Ubuntu下Qt creater 界面程序在编译运行后无法显示中文或中文乱码问题!...

    本文解决的主要是界面程序编译运行后无法显示中文的问题,如果在creater 中无法输入中文,下载个IBus或者搜狗之类的中文输入法即可解决! 首先说乱码问题,这个很好解决: 如果是在linux下打开W ...

  8. Qt之布局设置setLayout详解-源码剖析(下)

    一.简述 大家好,我是前行中的小猪,今天呢给大家继续上一篇Qt之布局设置setLayout详解(上)之后的内容,再给大家进行一下拓展. 1.1 setLayout源码剖析 上篇我们说到如何清空部件上的 ...

  9. 学习QT之信号槽机制详解

    学习QT之信号槽机制详解 一.Qt信号槽机制 概念:信号槽是Qt框架引以为豪的机制之一.所谓信号槽,实际就是观察者模式.当某个事件发生之后,比如:按钮检测到自己被点击了一下,它就会发出一个信号(sig ...

最新文章

  1. chrome浏览器插件开发
  2. 文件上传 upload-labs 1~20做题记录
  3. 常用公差配合表图_模具设计,常用模具零件选用
  4. C++笔记——指向常量的指针/指针常量
  5. 信息学奥赛一本通 1979:【18NOIP普及组】龙虎斗 | 洛谷 P5016 [NOIP2018 普及组] 龙虎斗
  6. Python 35个内置函数,你都ok吗?
  7. 强化学习《基于价值 - DQN其他细节算法》
  8. 期待!华为或在今年8月/9月推出自家操作系统
  9. 利用python实现冒泡排序_利用python实现冒泡排序
  10. 学习心得《稻盛和夫经营学》的读后感2300字
  11. 详解电脑怎么截图按什么键
  12. 基于python Moviepy的视频字幕识别和合成!
  13. win10可用空间变成未分配_有关如何在win10系统中对未分配的磁盘空间进行分区的详细教程...
  14. 微信小程序滴滴服务器报错,如何使用mpx框架(滴滴)给微信小程序分包
  15. C语言 投票系统:给定候选人,从键盘输入候选人的名字,统计票数,并输出最终获胜者...
  16. matlab, 生成一个数值一样的n维列向量
  17. C51单片机之keil编程入门(一)
  18. 从万物静默到声情并茂:百度输入法的AI发声计划
  19. 中信银行上线票付通产品 为电商打造专属电票服务
  20. linux驱动调试--段错误之oops信息分析

热门文章

  1. NBIOT模块 ME3616 AT命令 MQTT 连接 thingsboard
  2. 单链表基本操作的完整程序
  3. ospf避免环路_多进程OSPF发布LSA形成路由环路的规避办法
  4. Android 加载GIF图
  5. 盖档案骑缝章的样本_盖印鉴骑缝章的技巧
  6. [杂记]培训杂记(一)
  7. 基于JavaSwing和BeautyEye美化包实现的小型资源管理器
  8. 26岁工学女博士李晟曼已获聘湖南大学副教授
  9. python 相对路径和绝对路径的区别
  10. ipad wifi信号测试软件,总有适合你 iPad六种无线上网方式汇总