正解:
VS2010+QT4+QWT5+win32是适配的。
其余的配置基本不通。
当我用VS2019底下的命令行编译QT库时:
1.编译QWT库。VS2019 +QWT5源码
1.选择编译器:4种参数
2.到源码目录下 生成makefile 文件。
3.修改makefile 文件用于指定QT4还是QT5去编译:
3.1QT4
nmake :
3.11x86下生成:qwt5.dll. qwt5.lib ,但没有生成qwt_designer_plugin.dll
错误:
在编译qwt_designer_plugin5.dll时无法解析外部符号:
解决方法:
在cpp文件中导入user32.dll,user32.lib
3.11x86_64下生成:
错误截图如下:
应该是编译器32位64位不同造成的。
3.111 对比VS2010和VS2019下编译后的头文件和库文件对比。
3.111头文件一样
3.112 dll文件和.lib文件大小不同
VS2010+QT4+QWT5:编译结果
VS2019+QT4+QWT5:编译结果
3.12 X86_X64下:三个
3.2QT5+qwt5语法就过不去。
4.使用QWT产生error LNK2001的原因及解决方法
网上给出的解答都是没添加预处理过程。没成功。
.pro文件
DEFINES += WIN32 QT_DLL QWT_DLL
1.qmake qwt.pro 得makefile文件 | 2.nmake编译 | 错误 | 可能的原因 | |
QT4-X86-QWT5.2.1 | 1.生成的makefile文件相同。 2.makefile中指定用哪个内核编译。 3.x86和X86_X64无关 | 1.D:\QT\QT4-x86-qwt-5.2.1下生成2个 lib dll文件 qwt5.dll qwt5.lib 没有生成 qwt_designer_plugin.dll | 链接错误--LNK2019无法解析的外部符号。 | 怀疑是win32导致的 |
QT4-X86-X64-QWT5.2.1 | 没有生成文件。 | 链接错误-- | 肯定跟32位-64位有关。 | |
QT5-X86-QWT5.2.1 | 编译不通过。 | 找不到头文件。 | QTCORE5、4内核差异-QWidgets-QGUI。 | |
QT5-X86-X64-QWT5.2.1 | 编译不通过 | 找不到头文件。 |