转自:http://blog.csdn.net/yuzhiyuxia/article/details/7760917

一个QT程序,在Windows下编译运行正常;现在在Linux下编译成功之后运行的时候,程序却异常退出,命令行提示:QWidget: Must construct a QApplication before a QPaintDevice。

字面意思是必须在一个QPaintDevice对象(这里是QWidget,QWidget是QPaintDevice的子类)之前,先创建好QApplication对象。

不可能啊。。。在windows下运行是正常的啊!

g了好久,找到一篇文章:http://blog.chinaunix.net/u1/56545/showart.php?id=495687 (转者注:这个链接已经用不了)
虽然说是qwt的库的问题,但是,也可能是因为release和debug的问题导致的。 因为我在linux下是用的make all命令编译出的debug和release版本,二者生成的库文件的目录是相同的,很有可能产生相同的库文件而导致的冲突。(不像qt的dll那样release的没有d,debug的有d)

基于此,修改pro文件,将debug和release生成的库文件放在各自的目录下,运行,ok。

当然还有一种可能是QApplication没有初始化,即将QWidget放在QApplication对象的前面了。(转者注:貌似我也遇到这种情况)

转载于:https://www.cnblogs.com/pamxy/archive/2013/03/15/2991478.html

QWidget: Must construct a QApplication before a QPaintDevice相关推荐

  1. QWidget: Must construct a QApplication before a QWidget 请按任意键继续. . .

    系列文章目录 文章目录 系列文章目录 前言 一.错误原因? 前言 一.错误原因? 在调试examples工程时,遇到编译报错"QWidget: Must construct a QAppli ...

  2. 【troubleshoot】QT报错QWidget: Must construct a QApplication before a QWidget

    问题描述 错误描述: QWidget: Must construct a QApplication before a QWidget 原因分析: 程序中编译的 debug ,链接的库为release ...

  3. 解决:QWidget: Must construct a QApplication before a QWidget

    在使用UI的qwidget之前都必须先构造一个QApplication实例,这是断言的意思. 错误的可能是在哪个类中采用了静态的(static)的qwidget或其子类,因为静态和全局对象进入main ...

  4. PyQt5遇到QWidget: Must construct a QApplication before a QWidget

    引入sys模块和QApplication模块 app = QApplication(sys.argv) // 你的代码 sys.exit(app.exec_()) 结语:接下来就可以开始pthon x ...

  5. Qt4_在Qt设计师中集成自定义窗口部件

    在Qt设计师中集成自定义窗口部件 在Qt设计师中使用自定义窗口部件之前,我们必须让Qt设计师先察觉到它们的存在.有两种方法可以完成这一任务:改进法(promotion)和插件法(pluigin). 改 ...

  6. cgal配置以及一些资料

    Win7下VS2008编译CGAL3.9 (转:http://blog.csdn.net/wsh6759/article/details/6977847) CGAL是比较经典的计算几何库,算法经典,稳 ...

  7. linux文件操作管理,linux 文件管理操作入门

    mkdir -p /root/kali/bp/shell  一路创建文件夹直到生成文件夹shell,中间没有kali文件夹的话也会自动创建生成 tar解压缩 范例一:将整个 /etc 目录下的文件全部 ...

  8. QT绘图控件QWT的安装及配置

    1.QWT库下载 解压下载的压缩包,我们可以看到里面包含多个文件夹,有源码.有参考程序.有说明文档等等,有时间建议把参考程序都看一下,这样都每个控件有什么功能都很熟悉. 2.QWT编译 网上介绍QWT ...

  9. QVTKWidget控件显示二维图片

    QVTKWidget控件不是QT中默认控件,需要手动编译.用CMAKE编译VTK过程中,需要选择VTK支持QT.网络上有很多教程,不再重复了.但有一点要提醒大家:只需要将Release版本中QVTKW ...

最新文章

  1. 为什么要用这些框架来进行开发,直接new一个对象不香吗?
  2. 控件无法安装,windows已经阻止此软件因为无法验证发行者
  3. 脑机前沿 | 利用BCI来进行大脑想象手写进行文本输出
  4. Python 中文编码
  5. as3.0用了视频组件,导致视频打开后就全屏,加一下代码就行
  6. Oracle隐式游标和显式游标
  7. 剑指Offer #06 旋转数组的最小数字(二分查找)| 图文详解
  8. android Integer类的toString函数的使用
  9. ActiveMQ入门-ActiveMQ跟SpringBoot整合发送接收Queue
  10. 七阶拉丁方阵_最强大脑七阶立方之战规则解析 清华天才对其了如指掌
  11. BigDecimal 加减乘除运算
  12. 1 Selenium Python 基础
  13. IMAP与POP3的比较
  14. 球缺体积和球冠表面积的计算公式及应用
  15. Python实现文件搜索
  16. Java Socket设置timeout几种常用方式总结
  17. 移动端实时视频直播技术实践:如何做到实时秒开、流畅不卡
  18. tkMapper插件的详细讲解
  19. 如何清空Github上某仓库,而不是删除
  20. @Transactional 的使用

热门文章

  1. python自媒体创作_做自媒体该做什么领域?
  2. 指定jdk8_动图+源码+总结:深度解析 JDK8 中的数据结构(珍藏版)
  3. python document_python 处理document文档 保留原样式
  4. 告别Kafka Stream,让轻量级流处理更加简单
  5. 不同虚拟机局域网Vlan之间访问
  6. php session操作类,操作Session的PHP类
  7. css 两边到中间 渐变_css3渐变过渡机制
  8. python智能办公系统_用 Python 自动化办公能做到哪些有趣或有用的事情?
  9. 根据坐标点鼠标 不移动_CAD移动鼠标时,鼠标右下角有坐标提示,怎么取消?...
  10. android studio小案例代码,AndroidStudio开发小相册实例