很久没用QT,最近想试试qwt,发现几个容易出错的地方,如果有人可以看到这篇文章,也许可以为你节约一点时间。
1 QT和Qwt的库要匹配,必须都是release版本或者debug版本,不能混搭。
2 一般大家都得用slot和signal, 所以一定需要Q_OBJECT这个宏,记住在pro文件里加上 DEFINES += QT_DLL QWT_DLL,否则你会碰到The application failed to initialize properly ( 0xc0000005) 的错误,浪费我不少时间。奇怪的是,有人说这么写:
win32 {
INCLUDEPATH += C:/Qwt-5.0.2/include
LIBS += -LC:/Qwt-5.0.2/lib -lqwt
}
win32:QwtDll {
DEFINES += QT_DLL QWT_DLL
}
但是似乎不工作,必须把 DEFINES += QT_DLL QWT_DLL 放到上面的win32里面才可以。这个问题本来也只有在Windows 平台才会出现。
3 我用的qwt版本很老了,新的多了不少函数,注意看文档。