关于QT运行过程中出现QApplication:no such a file等错误,网上已经有很多解释了,原因基本都是QT4到QT5的版本变化问题。推荐一个很好的解决方法:在.pro文件中添加一句:
- greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
其中4代表版本。意思是对于4以后的版本,使用语句QT += widgets
当然还有另一种解决方法:
- #include <QtWidgets/QApplication>
- #include <QtWidgets/QPushButton>
然而,我今天要说的是更改以上问题以后,在release模式运行问题解决,而在debug模式下仍然报错的问题。困扰了我很久,程序已经简单到检查不出任何问题了。最后发现问题其实很简单,原因在于QT在debug模式下,会检测makefile是否发生改变,如果没有发生改变,则程序不会重新构建,也就是说对库库文件的修改并没有起作用。因此,需要重新运行qmake构建程序。