How can I solve the problem of jom/nmake.exe exiting during this compilation process?
-
My environment information is VS2022 + VTK9.4.0 + qt 6.8.0 on WIN11. At present, there will be an error as shown in the following figure in the compilation process. Whether or not “Use jom instead of nmake” is checked, I am very distressed now…
I need your generous help,please!
-
Hi and welcome to the Qt forum,
generally, please don't post images of text.
Instead, post the text itself by copying it and using the </> code tags.What exactly are you compiling?
VTK 9.4.0? If that's the case, please report the problem to VTK instead of Qt.
If you compile something else than VTK, please specify. -
Hi and welcome to the Qt forum,
generally, please don't post images of text.
Instead, post the text itself by copying it and using the </> code tags.What exactly are you compiling?
VTK 9.4.0? If that's the case, please report the problem to VTK instead of Qt.
If you compile something else than VTK, please specify.@Axel-Spoerl
Thank you for your reply!
Indeed, this is my first question, please forgive my many irregularities!
Please allow me to re-display the error message as follows:01:01:54: 为项目VTK_Demo执行步骤 ... 01:01:54: 配置没有改变, 跳过 qmake 步骤。 01:01:54: 正在启动 "D:\QT\Tools\QtCreator\bin\jom.exe" D:\QT\Tools\QtCreator\bin\jom.exe -f Makefile.Debug link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /MANIFEST:embed /OUT:debug\VTK_Demo.exe @C:\Users\ASUS\AppData\Local\Temp\VTK_Demo.exe.15424.31.jom mainwindow.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl vtksys::SystemToolsManager::SystemToolsManager(void)" (__imp_??0SystemToolsManager@vtksys@@QEAA@XZ),函数 "void __cdecl vtksys::`dynamic initializer for 'SystemToolsManagerInstance''(void)" (??__ESystemToolsManagerInstance@vtksys@@YAXXZ) 中引用了该符号 mainwindow.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl vtksys::SystemToolsManager::~SystemToolsManager(void)" (__imp_??1SystemToolsManager@vtksys@@QEAA@XZ),函数 "void __cdecl vtksys::`dynamic atexit destructor for 'SystemToolsManagerInstance''(void)" (??__FSystemToolsManagerInstance@vtksys@@YAXXZ) 中引用了该符号 mainwindow.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QVTKOpenGLNativeWidget::QVTKOpenGLNativeWidget(class QWidget *,class QFlags<enum Qt::WindowType>)" (__imp_??0QVTKOpenGLNativeWidget@@QEAA@PEAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z),函数 "public: void __cdecl Ui_MainWindow::setupUi(class QMainWindow *)" (?setupUi@Ui_MainWindow@@QEAAXPEAVQMainWindow@@@Z) 中引用了该符号 mainwindow.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: virtual __cdecl QVTKOpenGLNativeWidget::~QVTKOpenGLNativeWidget(void)" (__imp_??1QVTKOpenGLNativeWidget@@UEAA@XZ),函数 "public: virtual void * __cdecl QVTKOpenGLNativeWidget::`scalar deleting destructor'(unsigned int)" (??_GQVTKOpenGLNativeWidget@@UEAAPEAXI@Z) 中引用了该符号 mainwindow.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __cdecl QVTKOpenGLNativeWidget::metaObject(void)const " (?metaObject@QVTKOpenGLNativeWidget@@UEBAPEBUQMetaObject@@XZ) mainwindow.obj : error LNK2001: 无法解析的外部符号 "public: virtual void * __cdecl QVTKOpenGLNativeWidget::qt_metacast(char const *)" (?qt_metacast@QVTKOpenGLNativeWidget@@UEAAPEAXPEBD@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "public: virtual int __cdecl QVTKOpenGLNativeWidget::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@QVTKOpenGLNativeWidget@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual void __cdecl QVTKOpenGLNativeWidget::cleanupContext(void)" (?cleanupContext@QVTKOpenGLNativeWidget@@MEAAXXZ) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual bool __cdecl QVTKOpenGLNativeWidget::event(class QEvent *)" (?event@QVTKOpenGLNativeWidget@@MEAA_NPEAVQEvent@@@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual void __cdecl QVTKOpenGLNativeWidget::initializeGL(void)" (?initializeGL@QVTKOpenGLNativeWidget@@MEAAXXZ) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual void __cdecl QVTKOpenGLNativeWidget::paintGL(void)" (?paintGL@QVTKOpenGLNativeWidget@@MEAAXXZ) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual void __cdecl QOpenGLWidget::resizeGL(int,int)" (?resizeGL@QOpenGLWidget@@MEAAXHH@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual void __cdecl QOpenGLWidget::paintEvent(class QPaintEvent *)" (?paintEvent@QOpenGLWidget@@MEAAXPEAVQPaintEvent@@@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual void __cdecl QOpenGLWidget::resizeEvent(class QResizeEvent *)" (?resizeEvent@QOpenGLWidget@@MEAAXPEAVQResizeEvent@@@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual int __cdecl QOpenGLWidget::metric(enum QPaintDevice::PaintDeviceMetric)const " (?metric@QOpenGLWidget@@MEBAHW4PaintDeviceMetric@QPaintDevice@@@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual class QPaintDevice * __cdecl QOpenGLWidget::redirected(class QPoint *)const " (?redirected@QOpenGLWidget@@MEBAPEAVQPaintDevice@@PEAVQPoint@@@Z) mainwindow.obj : error LNK2001: 无法解析的外部符号 "protected: virtual class QPaintEngine * __cdecl QOpenGLWidget::paintEngine(void)const " (?paintEngine@QOpenGLWidget@@MEBAPEAVQPaintEngine@@XZ) debug\VTK_Demo.exe : fatal error LNK1120: 17 个无法解析的外部命令 jom: D:\QT_Projects\VTK_Demo\build\Desktop_Qt_6_8_0_MSVC2022_64bit-Debug\Makefile.Debug [debug\VTK_Demo.exe] Error 1120 jom: D:\QT_Projects\VTK_Demo\build\Desktop_Qt_6_8_0_MSVC2022_64bit-Debug\Makefile [debug] Error 2 01:01:56: 进程"D:\QT\Tools\QtCreator\bin\jom.exe"退出,退出代码 2 。 Error while building/deploying project VTK_Demo (kit: Desktop Qt 6.8.0 MSVC2022 64bit) The kit Desktop Qt 6.8.0 MSVC2022 64bit has configuration issues which might be the root cause for this problem. When executing step "Make" 01:01:56: Elapsed time: 00:02.
The error reporting in the compilation process I mentioned refers to the error reporting in compiling Qt project, not VTK.
Specifically, my Qt project called the relevant content in the VTK library, and when I compiled the Qt project, the error message as shown above appeared.
I'm not sure whether this problem is caused by QT itself or calling VTK...
Actually, I've been troubled by this for a long time, and I don't know how to solve it.😭😭
Thank you a lot! -
Hi,
Some things to check:
- which version of VTK did you install ? Meaning, is it the one for Visual Studio ?
- did you try with their latest version which is the 9.5 series ?
- as silly as it may sound, are you sure that this version has Qt support enabled ?