QTCharts“cartesianchartaxis_p.h”处的 QT nmake 异常“未定义接口”

Posted

技术标签:

【中文标题】QTCharts“cartesianchartaxis_p.h”处的 QT nmake 异常“未定义接口”【英文标题】:QT nmake exception "Undefined Interface" at QTCharts "cartesianchartaxis_p.h" 【发布时间】:2019-02-12 10:45:04 【问题描述】:

我正在尝试将 QTCharts 2.1.0 用于 QT 5.4.1 版本。我使用开源 QT 并尝试按照 qtcharts github release-2.1.0 link 中显示的说明安装 QTCharts

我构建没有任何问题,但是当我尝试使用 nmake 运行它时,我得到了下面显示的异常,我真的不知道原因。所以,我会很感激任何帮助。我正在使用 VS2012 x86 Native Tools 命令提示符。

例外:

 C:\Qt\Qt5.4.1\5.4\msvc2012_opengl\bin\moc.exe -DUNICODE -DWIN32 -DQT_CHA
RTS_LIBRARY -DQT_BUILD_CHARTS_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_
USE_MATH_DEFINES -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT
-DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=
0x040800 -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_COR
E_LIB -DNDEBUG -D_MSC_VER=1700 -D_WIN32 @.moc/release/mocinclude.tmp axis\cartes
ianchartaxis_p.h -o .moc\release\moc_cartesianchartaxis_p.cpp
axis\cartesianchartaxis_p.h(44): Error: Undefined interface
NMAKE : fatal error U1077: 'C:\Qt\Qt5.4.1\5.4\msvc2012_opengl\bin\moc.exe' : ret
urn code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0
\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.

【问题讨论】:

【参考方案1】:

看这里!我有同样的问题。在文件cartesianchartaxis_p.h 44 行中,它声明了一个接口QGraphicsLayoutItem。编译器找不到类。您可以尝试使文件qgraphicslayoutitem.h 可访问。 正如我所做的那样,我在文件cartesianchartaxis_p.h,#include "C:\Qt\Qt5.5.0\5.5\msvc2012\include\QtWidgets\qgraphicslayoutitem.h" 的前面包含了绝对文件路径。这样它工作得很好。 喜旺你能看的东!!!! --来自一个英国傻瓜

【讨论】:

以上是关于QTCharts“cartesianchartaxis_p.h”处的 QT nmake 异常“未定义接口”的主要内容,如果未能解决你的问题,请参考以下文章

QtCharts - 背景、前景显示

技术小新 | QtCharts快速入门

技术小新 | QtCharts快速入门

Qt qml 下使QtCharts

如何用 QtCharts 绘制非连续的时间序列轴?

在 QtCharts.QDateTimeAxis 上设置动态刻度