QWidget: Must construct a QApplication before a QPaintDevice
2012-07-18 21:43
429 查看
一个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对象的前面了。
字面意思是必须在一个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对象的前面了。
相关文章推荐
- QWidget: Must construct a QApplication before a QPaintDevice
- 解决QWidget: Must construct a QApplication before a QPaintDevice的问题
- QWidget:Must construct a QApplication before a QPaintDevice
- 我遇到的“QWidget: Must construct a QApplication before a QPaintDevice”问题
- 终于解决了QWidget: Must construct a QApplication before a QPaintDevice的问题
- QWidget: Must construct a QApplication before a QPaintDevice的问题
- 装CGAL与解决"QWidget: Must construct a QApplication before a QPaintDevice". 问题
- QWidget: must construct a QApplication before a QPaintDevice问题解决方法
- 解决QWidget: Must construct a QApplication before a QPaintDevice
- 怪异问题:qwidget: must construct a qapplication before a qpaintdevice
- 解决QWidget: Must construct a QApplication before a QPaintDevice
- 装CGAL与解决"QWidget: Must construct a QApplication before a QPaintDevice". 问题
- QWidget: Must construct a QApplication before a QPaintDevice
- QWidget: Must construct a QApplication before a QPaintDevice
- QT DLL的使用问题---QWidget: Must construct a QApplication before a QPaintDevice
- 解决QWidget: Must construct a QApplication before a QPaintDevice
- [Qt]QWidget Must construct a QApplication before a QPaintDevice问题解决
- 关于QwtMust construct a QApplication before a QPaintDevice的问题解决
- QWidget:Must construct a QApplication before a QWidget。
- QWidget: “Must construct a QApplication before a QWidget”