[vtkusers] Inresolved external for QVTKWidget in VTK-8.0.1.

Elvis Stansvik elvis.stansvik at orexplore.com
Mon Oct 16 10:14:33 EDT 2017


Another tip if you're going to stick to using QMake is the
Utilities/Maintenance/WhatModulesVTK.py Python script in VTK sources,
which you can run on your source to find out which VTK modules (and
thus libraries) you're using.

Example (on Linux):

[estan at newton orexplore]$ VTK/Utilities/Maintenance/WhatModulesVTK.py
VTK ~/VTKQtQMakeTest
Modules and their dependencies:
find_package(VTK COMPONENTS
  vtkCommonCore
  vtkCommonDataModel
  vtkCommonExecutionModel
  vtkCommonMath
  vtkCommonMisc
  vtkCommonTransforms
  vtkFiltersCore
  vtkFiltersSources
  vtkGUISupportQt
  vtkRenderingCore
  vtkRenderingOpenGL2
  vtkkwiml
)
Your application code includes 12 of 204 vtk modules.

All modules referenced in the files:
find_package(VTK COMPONENTS
  vtkCommonCore
  vtkFiltersSources
  vtkGUISupportQt
  vtkRenderingCore
  vtkRenderingOpenGL2
)
Your application code includes 5 of 204 vtk modules.

Minimal set of modules:
find_package(VTK COMPONENTS
  vtkFiltersSources
  vtkGUISupportQt
)
Your application code includes 2 of 204 vtk modules.


[estan at newton orexplore]$

The first list ("Modules and their dependencies") is what you'd need
to use when using QMake.

The script is not perfect (but helps a lot), and you'll have to modify
the script slightly like this to tell it you're using the OpenGL2
backend:

diff --git a/Utilities/Maintenance/WhatModulesVTK.py
b/Utilities/Maintenance/WhatModulesVTK.py
index 9e667f0..8d8ec87 100755
--- a/Utilities/Maintenance/WhatModulesVTK.py
+++ b/Utilities/Maintenance/WhatModulesVTK.py
@@ -226,7 +226,7 @@ def MakeFindPackage(modules):

 from pprint import pprint as pp

-def main(vtkSourceDir, sourceFiles, renderingBackend='OpenGL'):
+def main(vtkSourceDir, sourceFiles, renderingBackend='OpenGL2'):
     '''
     Start the program
     '''

Regards,
Elvis


2017-10-16 16:10 GMT+02:00 Elvis Stansvik <elvis.stansvik at orexplore.com>:
> 2017-10-16 15:47 GMT+02:00 Zoltan Kovacs <Zoltan.Kovacs at esi-group.com>:
>> In the project settings I set from Debug version to Release version and I
>> can link the porject now. It seems that the VTK Relase libaries cannot be
>> used with Debug version of the QtCreator project. I was not careful enough
>> when I tried to buil the debug version of the Qt app. Thanks a lot for the
>> linker output info!
>
> Ah, glad to hear it. I started experimenting myself in a Windows VM,
> and came up with this .pro file for my minimal test (the cone example
> adapted to use a QVTKOpenGLWidget promoted from QWidget in the Design
> mode):
>
> CONFIG += c++11
> QT += core gui widgets
> TARGET = VTKQtQMakeTest
> TEMPLATE = app
> SOURCES += main.cpp mainwindow.cpp
> HEADERS += mainwindow.h
> FORMS += mainwindow.ui
>
> INCLUDEPATH += C:/Users/Elvis/Dev/VTK-8.0.1-inst/include/vtk-8.0
> DEFINES += vtkRenderingCore_AUTOINIT=$$shell_quote(2(vtkInteractionStyle,vtkRenderingOpenGL2))
> LIBS += -L"C:/Users/Elvis/Dev/VTK-8.0.1-inst/lib"
> LIBS += -lvtkCommonCore-8.0 \
>         -lvtkCommonDataModel-8.0 \
>         -lvtkCommonExecutionModel-8.0 \
>         -lvtkCommonMath-8.0 \
>         -lvtkCommonMisc-8.0 \
>         -lvtkCommonTransforms-8.0 \
>         -lvtkFiltersCore-8.0 \
>         -lvtkFiltersSources-8.0 \
>         -lvtkGUISupportQt-8.0 \
>         -lvtkInteractionStyle-8.0 \
>         -lvtkRenderingCore-8.0 \
>         -lvtkRenderingOpenGL2-8.0
>
> I think when using QMake, you will have to mess about with the
> initialization of implementation modules [1] in order for the program
> to run, either by using DEFINES like I did above, or using
> VTK_MODULE_INIT. This is something you can get "for free" when using
> CMake.
>
> I could never run my test app, since the VM (VirtualBox) doesn't have
> a sufficient OpenGL implementation. But it compiled and linked at
> least.
>
> Elvis
>
> [1] https://www.vtk.org/Wiki/VTK/Build_System_Migration#How_Implementation_Modules_Are_Initialized
>
>>
>> Zoltan
>>
>>
>>
>> Am 16.10.2017 um 15:14 schrieb Elvis Stansvik:
>>>
>>> 2017-10-16 15:12 GMT+02:00 Zoltan Kovacs <Zoltan.Kovacs at esi-group.com>:
>>>>
>>>> Unfortunately I cannot find such a file in that folder.  I also searched
>>>> any
>>>> *.jom file there but the linker might have deleted them.
>>>
>>>
>>> Yes sorry, I just realized that. See my earlier mail about the /U jom
>>> flag.
>>>
>>> Elvis
>>>
>>>>
>>>> Zoltan
>>>>
>>>>
>>>> Am 16.10.2017 um 13:12 schrieb Elvis Stansvik:
>>>>>
>>>>>
>>>>> 2017-10-16 13:00 GMT+02:00 Zoltan Kovacs <Zoltan.Kovacs at esi-group.com>:
>>>>>>
>>>>>>
>>>>>> Dear Elvis,
>>>>>>
>>>>>> Thanks for the information. I have the files
>>>>>> -lvtkGUISupportQt-8.0 \
>>>>>> -lvtkGUISupportQtSQL-8.0 \
>>>>>> in the library list and the libary path is also given in the project
>>>>>> file
>>>>>> loaded in QtCreator but the compiler cannot resolve the symbol
>>>>>> QVTKOpenGLWidget:
>>>>>>
>>>>>> Starte "C:\Qt\Tools\QtCreator\bin\jom.exe"
>>>>>>           C:\Qt\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
>>>>>>           cl -c -nologo -Zc:wchar_t -FS -Zi -MDd -GR -W3 -w34100
>>>>>> -w34189
>>>>>> -w44996 -EHsc /Fddebug\AM_GUI.vc.pdb -DUNICODE -DWIN32 -DLINUX
>>>>>> -DQT_QML_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB
>>>>>> -DQT_CORE_LIB -I..\AM_GUI -I. -IC:\VTK\8.0.1\include\vtk-8.0
>>>>>> -IC:\Qt\5.8\msvc2013\include
>>>>>> -IC:\Qt\5.8\msvc2013\include\QtPrintSupport
>>>>>> -IC:\Qt\5.8\msvc2013\include\QtWidgets
>>>>>> -IC:\Qt\5.8\msvc2013\include\QtGui
>>>>>> -IC:\Qt\5.8\msvc2013\include\QtANGLE
>>>>>> -IC:\Qt\5.8\msvc2013\include\QtCore
>>>>>> -Idebug -I. -IC:\Qt\5.8\msvc2013\mkspecs\win32-msvc2013 -Fodebug\
>>>>>> @C:\Users\zko\AppData\Local\Temp\distortionpage.obj.8900.125.jom
>>>>>>
>>>>>> distortionpage.cpp
>>>>>>           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\AM_GUI.exe
>>>>>> @C:\Users\zko\AppData\Local\Temp\AM_GUI.exe.8900.4259.jom
>>>>>
>>>>>
>>>>>
>>>>> I think in order to shorten the linker command line and not exceed
>>>>> command line length limits, qmake is using a "Linker Response File"
>>>>> (using @), so I think you have to look into
>>>>>
>>>>>       C:\Users\zko\AppData\Local\Temp\AM_GUI.exe.8900.4259.jom
>>>>>
>>>>> to see the full list of linker arguments.
>>>>>
>>>>> Would be interesting to see the contents of that file.
>>>>>
>>>>> Elvis
>>>>>
>>>>>>
>>>>>> distortionpage.obj : error LNK2019: unresolved external symbol
>>>>>> "__declspec(dllimport) public: __thiscall
>>>>>> QVTKOpenGLWidget::QVTKOpenGLWidget(class QWidget *,class QFlags<enum
>>>>>> Qt::WindowType>)"
>>>>>>
>>>>>>
>>>>>> (__imp_??0QVTKOpenGLWidget@@QAE at PAVQWidget@@V?$QFlags at W4WindowType@Qt@@@@@Z)
>>>>>> referenced in function "public: void __thiscall
>>>>>> Ui_DistortionPage::setupUi(class QWidget *)"
>>>>>> (?setupUi at Ui_DistortionPage@@QAEXPAVQWidget@@@Z)
>>>>>>
>>>>>>
>>>>>> It seems that the compiler switches contain the include path for VTK
>>>>>> but
>>>>>> the
>>>>>> library path and the libraries for VTK are missing from the linker
>>>>>> options.
>>>>>> I guess it must be a qmake issue. Thanks anyway.
>>>>>>
>>>>>> Regards,
>>>>>> Zoltan
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Am 16.10.2017 um 11:59 schrieb Elvis Stansvik:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> 2017-10-16 11:39 GMT+02:00 Zoltan Kovacs
>>>>>>> <Zoltan.Kovacs at esi-group.com>:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Dear Dan,
>>>>>>>>
>>>>>>>> In QtCreator I added a QWidget to the UI form and used "Promote to
>>>>>>>> ..."
>>>>>>>> QVTKOpenGLWidget class for it. I also included QVTKOpenGLWidget.h in
>>>>>>>> the
>>>>>>>> header file of the application. However, when linking the source I
>>>>>>>> get
>>>>>>>> the
>>>>>>>> error message
>>>>>>>>
>>>>>>>> distortionpage.obj:-1: Fehler: LNK2019: unresolved external symbol
>>>>>>>> "__declspec(dllimport) public: __thiscall
>>>>>>>> QVTKOpenGLWidget::QVTKOpenGLWidget(class QWidget *,class QFlags<enum
>>>>>>>> Qt::WindowType>)"
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> (__imp_??0QVTKOpenGLWidget@@QAE at PAVQWidget@@V?$QFlags at W4WindowType@Qt@@@@@Z)
>>>>>>>> referenced in function "public: void __thiscall
>>>>>>>> Ui_DistortionPage::setupUi(class QWidget *)"
>>>>>>>> (?setupUi at Ui_DistortionPage@@QAEXPAVQWidget@@@Z)
>>>>>>>>
>>>>>>>>
>>>>>>>> It seems that the MSVC2013 linker cannot find the library of
>>>>>>>> QVTKOpenGLWidget. I searched a library file with a similar name in
>>>>>>>> the
>>>>>>>> folder where CMake generated the VTK libraries with Qt support but I
>>>>>>>> could
>>>>>>>> not find it. I am just wondering if it is missing or some other
>>>>>>>> library
>>>>>>>> file
>>>>>>>> with a completely different name contains this symbol.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> The class is part of the vtkGUISupportQt library (on Windows the files
>>>>>>> would be vtkGUISupportQt-8.0.lib/dll).
>>>>>>>
>>>>>>> We're using the "promote" functionality in Qt Creator's Design mode to
>>>>>>> promote a widget to our custom QVTKOpenGLWidget subclass. It should
>>>>>>> work fine to promote to it directly.
>>>>>>>
>>>>>>> Elvis
>>>>>>>
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Zoltan
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Am 10.10.2017 um 19:23 schrieb Dan Lipsa:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> In Qt Designer you should be able to use QVTKOpenGLWidget by adding
>>>>>>>>> first
>>>>>>>>> a QOpenGLWidget and then 'Promote to ...' a QVTKOpenGLWidget. So you
>>>>>>>>> can
>>>>>>>>> build the UI of your Qt application this way.
>>>>>>>>>
>>>>>>>>> I am not sure what is needed for QtCreator. I don't use that.
>>>>>>>>>
>>>>>>>>> Hope this helps,
>>>>>>>>> Dan
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Tue, Oct 10, 2017 at 10:59 AM, Zoltan Kovacs
>>>>>>>>> <Zoltan.Kovacs at esi-group.com <mailto:Zoltan.Kovacs at esi-group.com>>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>        Dear Mike,
>>>>>>>>>
>>>>>>>>>        Thank you very much for your prompt answer. As I wrote to
>>>>>>>>> Dan,
>>>>>>>>> we
>>>>>>>>>        have to use QtCreator for the development here. Then I have
>>>>>>>>> access
>>>>>>>>>        only for qmake and I can edit project files for it. If
>>>>>>>>>        QVTKOpenGLWidget is the only VTK widget class supported for
>>>>>>>>> Qt5
>>>>>>>>> then
>>>>>>>>>        I ave to find out how to insert such an object into the UI
>>>>>>>>> form
>>>>>>>>> file
>>>>>>>>>        of QT.
>>>>>>>>>
>>>>>>>>>        Kind regards,
>>>>>>>>>        Zoltan
>>>>>>>>>
>>>>>>>>>        Am 10.10.2017 um 16:48 schrieb Mike Chinander:
>>>>>>>>>
>>>>>>>>>            Also, when working with VTK, it will be a lot easier to
>>>>>>>>> switch
>>>>>>>>>            to using CMake instead of Qt project files (QtCreator
>>>>>>>>> supports
>>>>>>>>>            CMake). Look at the examples Dan linked to. You will have
>>>>>>>>> to
>>>>>>>>>            update the CMakelists.txt file for Qt. You will probably
>>>>>>>>> have
>>>>>>>>> to
>>>>>>>>>            add the following:
>>>>>>>>>
>>>>>>>>>            FIND_PACKAGE(Qt5Core REQUIRED)
>>>>>>>>>            FIND_PACKAGE(Qt5Widgets REQUIRED)
>>>>>>>>>
>>>>>>>>>            and update the target_link_libraries line(add
>>>>>>>>> Qt5::Widget) ,
>>>>>>>>> e.g.,:
>>>>>>>>>
>>>>>>>>>            target_link_libraries(QtBarChart Qt5::Widgets
>>>>>>>>> ${VTK_LIBRARIES})
>>>>>>>>>
>>>>>>>>>            On Tue, Oct 10, 2017 at 9:33 AM, Dan Lipsa
>>>>>>>>>            <dan.lipsa at kitware.com <mailto:dan.lipsa at kitware.com>
>>>>>>>>>            <mailto:dan.lipsa at kitware.com
>>>>>>>>> <mailto:dan.lipsa at kitware.com>>>
>>>>>>>>>            wrote:
>>>>>>>>>
>>>>>>>>>                 Zoltan,
>>>>>>>>>                 This is unrelated to the error you are seeing
>>>>>>>>> however:
>>>>>>>>>
>>>>>>>>>                 For Qt5 you'll need to use QVTKOpenGLWidget rather
>>>>>>>>> than
>>>>>>>>>            QVTKWidget.  See
>>>>>>>>>            https://lorensen.github.io/VTKExamples/site/Cxx/
>>>>>>>>>            <https://lorensen.github.io/VTKExamples/site/Cxx/>
>>>>>>>>>                 <https://lorensen.github.io/VTKExamples/site/Cxx/
>>>>>>>>>            <https://lorensen.github.io/VTKExamples/site/Cxx/>>
>>>>>>>>>                 All examples are converted to Qt5. Also, VTK master
>>>>>>>>> has
>>>>>>>>> a
>>>>>>>>>            number of
>>>>>>>>>                 examples that have been converted to Qt5:
>>>>>>>>> Examples/GUI/Qt
>>>>>>>>>
>>>>>>>>>                 Hope this helps,
>>>>>>>>>                 Dan
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                 On Tue, Oct 10, 2017 at 10:10 AM, Zoltan Kovacs
>>>>>>>>>                 <Zoltan.Kovacs at esi-group.com
>>>>>>>>>            <mailto:Zoltan.Kovacs at esi-group.com>
>>>>>>>>>            <mailto:Zoltan.Kovacs at esi-group.com
>>>>>>>>>
>>>>>>>>>            <mailto:Zoltan.Kovacs at esi-group.com>>>
>>>>>>>>>
>>>>>>>>>                 wrote:
>>>>>>>>>
>>>>>>>>>                     Dear all,
>>>>>>>>>
>>>>>>>>>                     In CMake I generated a solution project of
>>>>>>>>> VTK-8.0.1
>>>>>>>>>            with Qt5
>>>>>>>>>                     support for MSVS2013. After having run the
>>>>>>>>> ALL_BUILD
>>>>>>>>>            and INSTALL
>>>>>>>>>                     projects with the install prefix C:\VTK\8.0.1 in
>>>>>>>>> VM2013
>>>>>>>>>            I could
>>>>>>>>>                     installed the Win32 bit binaries of VTK 8.0.1 in
>>>>>>>>> that
>>>>>>>>>            folder.
>>>>>>>>>                     The header files and the libraries are located
>>>>>>>>> in
>>>>>>>>>                     C:\VTK\8.0.1\include\vtk-8.0   and
>>>>>>>>>                     C:\VTK\8.0.1\lib.
>>>>>>>>>
>>>>>>>>>                     I copied the file QVTKWidgetPlugin.dll from the
>>>>>>>>> VTK
>>>>>>>>> binary
>>>>>>>>>                     folders to the plugin folder of QTCreator, which
>>>>>>>>> uses
>>>>>>>>>            QT 5.8
>>>>>>>>>                     msvs2013 32 bit version.
>>>>>>>>>
>>>>>>>>>                     Then I set the include and library paths and
>>>>>>>>> added
>>>>>>>>> all
>>>>>>>>>            the VTK
>>>>>>>>>                     libary files from C:\VTK\8.0.1\lib for the
>>>>>>>>> linker
>>>>>>>>>            setting in the
>>>>>>>>>                     project file
>>>>>>>>>                     of a QT application in QtCreator:
>>>>>>>>>
>>>>>>>>>                     INCLUDEPATH += C:\VTK\8.0.1\include\vtk-8.0
>>>>>>>>>                     LIBS += -LC:\VTK\8.0.1\lib
>>>>>>>>>
>>>>>>>>>                     LIBS += -lvtkRenderingLabel-8.0 \
>>>>>>>>>                     -lvtkRenderingLOD-8.0 \
>>>>>>>>>                     -lvtkRenderingOpenGL2-8.0 \
>>>>>>>>>                     -lvtkRenderingQt-8.0 \
>>>>>>>>>                     -lvtkRenderingVolume-8.0 \
>>>>>>>>>                     -lvtkRenderingVolumeOpenGL2-8.0 \
>>>>>>>>>                     -lvtksqlite-8.0 \
>>>>>>>>>                     -lvtksys-8.0 \
>>>>>>>>>                     -lvtkTestingGenericBridge-8.0 \
>>>>>>>>>                     -lvtkTestingIOSQL-8.0 \
>>>>>>>>>                     -lvtkTestingRendering-8.0 \
>>>>>>>>>                     -lvtktiff-8.0 \
>>>>>>>>>                     -lvtkverdict-8.0 \
>>>>>>>>>                     -lvtkViewsContext2D-8.0 \
>>>>>>>>>                     -lvtkViewsCore-8.0 \
>>>>>>>>>                     -lvtkViewsInfovis-8.0 \
>>>>>>>>>                     -lvtkViewsQt-8.0 \
>>>>>>>>>                     -lvtkzlib-8.0 \
>>>>>>>>>                     -lvtkalglib-8.0 \
>>>>>>>>>                     -lvtkChartsCore-8.0 \
>>>>>>>>>                     -lvtkCommonColor-8.0 \
>>>>>>>>>                     -lvtkCommonComputationalGeometry-8.0 \
>>>>>>>>>                     -lvtkCommonCore-8.0 \
>>>>>>>>>                     -lvtkCommonDataModel-8.0 \
>>>>>>>>>                     -lvtkCommonExecutionModel-8.0 \
>>>>>>>>>                     -lvtkCommonMath-8.0 \
>>>>>>>>>                     -lvtkCommonMisc-8.0 \
>>>>>>>>>                     -lvtkCommonSystem-8.0 \
>>>>>>>>>                     -lvtkCommonTransforms-8.0 \
>>>>>>>>>                     -lvtkDICOMParser-8.0 \
>>>>>>>>>                     -lvtkDomainsChemistry-8.0 \
>>>>>>>>>                     -lvtkDomainsChemistryOpenGL2-8.0 \
>>>>>>>>>                     -lvtkexoIIc-8.0 \
>>>>>>>>>                     -lvtkexpat-8.0 \
>>>>>>>>>                     -lvtkFiltersAMR-8.0 \
>>>>>>>>>                     -lvtkFiltersCore-8.0 \
>>>>>>>>>                     -lvtkFiltersExtraction-8.0 \
>>>>>>>>>                     -lvtkFiltersFlowPaths-8.0 \
>>>>>>>>>                     -lvtkFiltersGeneral-8.0 \
>>>>>>>>>                     -lvtkFiltersGeneric-8.0 \
>>>>>>>>>                     -lvtkFiltersGeometry-8.0 \
>>>>>>>>>                     -lvtkFiltersHybrid-8.0 \
>>>>>>>>>                     -lvtkFiltersHyperTree-8.0 \
>>>>>>>>>                     -lvtkFiltersImaging-8.0 \
>>>>>>>>>                     -lvtkFiltersModeling-8.0 \
>>>>>>>>>                     -lvtkFiltersParallel-8.0 \
>>>>>>>>>                     -lvtkFiltersParallelImaging-8.0 \
>>>>>>>>>                     -lvtkFiltersPoints-8.0 \
>>>>>>>>>                     -lvtkFiltersProgrammable-8.0 \
>>>>>>>>>                     -lvtkFiltersSelection-8.0 \
>>>>>>>>>                     -lvtkFiltersSMP-8.0 \
>>>>>>>>>                     -lvtkFiltersSources-8.0 \
>>>>>>>>>                     -lvtkFiltersStatistics-8.0 \
>>>>>>>>>                     -lvtkFiltersTexture-8.0 \
>>>>>>>>>                     -lvtkFiltersTopology-8.0 \
>>>>>>>>>                     -lvtkFiltersVerdict-8.0 \
>>>>>>>>>                     -lvtkfreetype-8.0 \
>>>>>>>>>                     -lvtkGeovisCore-8.0 \
>>>>>>>>>                     -lvtkgl2ps-8.0 \
>>>>>>>>>                     -lvtkglew-8.0 \
>>>>>>>>>                     -lvtkGUISupportQt-8.0 \
>>>>>>>>>                     -lvtkGUISupportQtSQL-8.0 \
>>>>>>>>>                     -lvtkhdf5_hl-8.0 \
>>>>>>>>>                     -lvtkhdf5-8.0 \
>>>>>>>>>                     -lvtkImagingColor-8.0 \
>>>>>>>>>                     -lvtkImagingCore-8.0 \
>>>>>>>>>                     -lvtkImagingFourier-8.0 \
>>>>>>>>>                     -lvtkImagingGeneral-8.0 \
>>>>>>>>>                     -lvtkImagingHybrid-8.0 \
>>>>>>>>>                     -lvtkImagingMath-8.0 \
>>>>>>>>>                     -lvtkImagingMorphological-8.0 \
>>>>>>>>>                     -lvtkImagingSources-8.0 \
>>>>>>>>>                     -lvtkImagingStatistics-8.0 \
>>>>>>>>>                     -lvtkImagingStencil-8.0 \
>>>>>>>>>                     -lvtkInfovisCore-8.0 \
>>>>>>>>>                     -lvtkInfovisLayout-8.0 \
>>>>>>>>>                     -lvtkInteractionImage-8.0 \
>>>>>>>>>                     -lvtkInteractionStyle-8.0 \
>>>>>>>>>                     -lvtkInteractionWidgets-8.0 \
>>>>>>>>>                     -lvtkIOAMR-8.0 \
>>>>>>>>>                     -lvtkIOCore-8.0 \
>>>>>>>>>                     -lvtkIOEnSight-8.0 \
>>>>>>>>>                     -lvtkIOExodus-8.0 \
>>>>>>>>>                     -lvtkIOExport-8.0 \
>>>>>>>>>                     -lvtkIOExportOpenGL2-8.0 \
>>>>>>>>>                     -lvtkIOGeometry-8.0 \
>>>>>>>>>                     -lvtkIOImage-8.0 \
>>>>>>>>>                     -lvtkIOImport-8.0 \
>>>>>>>>>                     -lvtkIOInfovis-8.0 \
>>>>>>>>>                     -lvtkIOLegacy-8.0 \
>>>>>>>>>                     -lvtkIOLSDyna-8.0 \
>>>>>>>>>                     -lvtkIOMINC-8.0 \
>>>>>>>>>                     -lvtkIOMovie-8.0 \
>>>>>>>>>                     -lvtkIONetCDF-8.0 \
>>>>>>>>>                     -lvtkIOParallel-8.0 \
>>>>>>>>>                     -lvtkIOParallelXML-8.0 \
>>>>>>>>>                     -lvtkIOPLY-8.0 \
>>>>>>>>>                     -lvtkIOSQL-8.0 \
>>>>>>>>>                     -lvtkIOTecplotTable-8.0 \
>>>>>>>>>                     -lvtkIOVideo-8.0 \
>>>>>>>>>                     -lvtkIOXML-8.0 \
>>>>>>>>>                     -lvtkIOXMLParser-8.0 \
>>>>>>>>>                     -lvtkjpeg-8.0 \
>>>>>>>>>                     -lvtkjsoncpp-8.0 \
>>>>>>>>>                     -lvtklibharu-8.0 \
>>>>>>>>>                     -lvtklibxml2-8.0 \
>>>>>>>>>                     -lvtkLocalExample-8.0 \
>>>>>>>>>                     -lvtklz4-8.0 \
>>>>>>>>>                     -lvtkmetaio-8.0 \
>>>>>>>>>                     -lvtknetcdf_c++ \
>>>>>>>>>                     -lvtkNetCDF-8.0 \
>>>>>>>>>                     -lvtkoggtheora-8.0 \
>>>>>>>>>                     -lvtkParallelCore-8.0 \
>>>>>>>>>                     -lvtkpng-8.0 \
>>>>>>>>>                     -lvtkproj4-8.0 \
>>>>>>>>>                     -lvtkRenderingAnnotation-8.0 \
>>>>>>>>>                     -lvtkRenderingContext2D-8.0 \
>>>>>>>>>                     -lvtkRenderingContextOpenGL2-8.0 \
>>>>>>>>>                     -lvtkRenderingCore-8.0 \
>>>>>>>>>                     -lvtkRenderingFreeType-8.0 \
>>>>>>>>>                     -lvtkRenderingGL2PSOpenGL2-8.0 \
>>>>>>>>>                     -lvtkRenderingImage-8.0 \
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                     However, if I add a QVTKWidget on the UI file of
>>>>>>>>> the
>>>>>>>>>                     application, include the file QVTKWidget.h in
>>>>>>>>> the
>>>>>>>>>            header file of
>>>>>>>>>                     the application and I try to link it in
>>>>>>>>> QtCreator
>>>>>>>>> with
>>>>>>>>> the
>>>>>>>>>                     32-bit VTK and Qt libraries, MSVS2013 (in the
>>>>>>>>> toolchain
>>>>>>>>> of
>>>>>>>>>                     QtCreator) sends error messages for unresolved
>>>>>>>>> external
>>>>>>>>>            symbols
>>>>>>>>>                     for all the functions/classes belonging to the
>>>>>>>>>            QVTKWidget, such as
>>>>>>>>>
>>>>>>>>>                     distortionpage.obj:-1: Fehler: LNK2019:
>>>>>>>>> unresolved
>>>>>>>>> external
>>>>>>>>>                     symbol "__declspec(dllimport) public: __thiscall
>>>>>>>>>                     QVTKWidget::QVTKWidget(class QWidget *,class
>>>>>>>>> QFlags<enum
>>>>>>>>>                     Qt::WindowType>)"
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> (__imp_??0QVTKWidget@@QAE at PAVQWidget@@V?$QFlags at W4WindowType@Qt@@@@@Z)
>>>>>>>>>                     referenced in function "public: void __thiscall
>>>>>>>>>                     Ui_DistortionPage::setupUi(class QWidget *)"
>>>>>>>>>                     (?setupUi at Ui_DistortionPage@@QAEXPAVQWidget@@@Z)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                     It seems that the linker could not find the
>>>>>>>>> libary
>>>>>>>>> for
>>>>>>>>> the
>>>>>>>>>                     QVTKWidget plugin, which is loaded since I could
>>>>>>>>> chose
>>>>>>>>>            QtWidget
>>>>>>>>>                     from the widget list in the UI form editor in
>>>>>>>>>            QtCreator. I do
>>>>>>>>>                     not see any ABI issue here since I use the 32
>>>>>>>>> bit
>>>>>>>>> mscv2103
>>>>>>>>>                     version of Qt and I also compiled and linked the
>>>>>>>>> 32
>>>>>>>>> bit
>>>>>>>>>            version
>>>>>>>>>                     of VTK libaries and plugin files with MSVS2013.
>>>>>>>>> I
>>>>>>>>> am
>>>>>>>>>            wondering
>>>>>>>>>                     if anybody could make VTK-8.1 working with Qt.
>>>>>>>>> Thanks
>>>>>>>>> a
>>>>>>>>>            lot.
>>>>>>>>>
>>>>>>>>>                     Kind regars,
>>>>>>>>>                     Zoltan
>>>>>>>>>
>>>>>>>>>                     Regards,
>>>>>>>>>                     Zoltan
>>>>>>>>>
>>>>>>>>>                     Am 09.10.2017 um 07:34 schrieb support at qt.io
>>>>>>>>>            <mailto:support at qt.io> <mailto:support at qt.io
>>>>>>>>>            <mailto:support at qt.io>>:
>>>>>>>>>
>>>>>>>>>                         Hi Zoltan,
>>>>>>>>>
>>>>>>>>>                         I don't know how the widget should be
>>>>>>>>> installed
>>>>>>>>> or
>>>>>>>>>            set up in
>>>>>>>>>                         a project, but you could just search for the
>>>>>>>>> header
>>>>>>>>>            file and
>>>>>>>>>                         point INCLUDEPATH to the folder that
>>>>>>>>> contains
>>>>>>>>> it.
>>>>>>>>>
>>>>>>>>>                         Regards,
>>>>>>>>>                         Joni
>>>>>>>>>
>>>>>>>>>                         On 06 October 2017 at 18:26:00 EEST
>>>>>>>>>            Zoltan.Kovacs at esi-group.com
>>>>>>>>> <mailto:Zoltan.Kovacs at esi-group.com>
>>>>>>>>>                         <mailto:Zoltan.Kovacs at esi-group.com
>>>>>>>>>
>>>>>>>>>            <mailto:Zoltan.Kovacs at esi-group.com>> wrote:
>>>>>>>>>
>>>>>>>>>                             Hi Joni,
>>>>>>>>>
>>>>>>>>>                             I see. However I found MSCV2013 32 bit
>>>>>>>>> version
>>>>>>>>>            for Qt
>>>>>>>>>                             5.8. I install
>>>>>>>>>                             that version and I built the VTK
>>>>>>>>> binaries
>>>>>>>>> for
>>>>>>>>> win32
>>>>>>>>>                             platform with
>>>>>>>>>                             MVS2013. After having copied the VTK
>>>>>>>>> plugin
>>>>>>>>>            file into
>>>>>>>>>                             the plugin folder
>>>>>>>>>                             of QtCreator I could launch it
>>>>>>>>> successfully.
>>>>>>>>> The
>>>>>>>>>                             QVTKWidget is in the
>>>>>>>>>                             Widget list of QtCreator now. I could
>>>>>>>>> insert a
>>>>>>>>>                             QVTKWidget in the UI form
>>>>>>>>>                             as well. The only problem now is that
>>>>>>>>> QtCreator
>>>>>>>>>            cannot
>>>>>>>>>                             find the header
>>>>>>>>>                             file for QVTKWidget. It is not cleat how
>>>>>>>>> to
>>>>>>>>> set
>>>>>>>>> the
>>>>>>>>>                             INCLUDEPATH in the
>>>>>>>>>                             project file since VS2103 did not create
>>>>>>>>> a
>>>>>>>>> separate
>>>>>>>>>                             include folder in
>>>>>>>>>                             the target folder C:/VTK/bin for the VTK
>>>>>>>>>            binaries. Only
>>>>>>>>>                             the library
>>>>>>>>>                             files have a separate folder,
>>>>>>>>>            C:/VTK/bin/lib/Release.
>>>>>>>>>
>>>>>>>>>                             Regards,
>>>>>>>>>                             Zoltan
>>>>>>>>>
>>>>>>>>>                             Am 06.10.2017 um 12:08 schrieb
>>>>>>>>> support at qt.io
>>>>>>>>>            <mailto:support at qt.io>
>>>>>>>>>                             <mailto:support at qt.io
>>>>>>>>> <mailto:support at qt.io>>:
>>>>>>>>>
>>>>>>>>>                                 Hi Zoltan,
>>>>>>>>>
>>>>>>>>>                                 On 06 October 2017 at 13:00:00 EEST
>>>>>>>>>            Zoltan.Kovacs at esi-group.com
>>>>>>>>> <mailto:Zoltan.Kovacs at esi-group.com>
>>>>>>>>>                                 <mailto:Zoltan.Kovacs at esi-group.com
>>>>>>>>>
>>>>>>>>>            <mailto:Zoltan.Kovacs at esi-group.com>> wrote:
>>>>>>>>>
>>>>>>>>>                                     Hi Joni,
>>>>>>>>>
>>>>>>>>>                                     Thank you very much for your
>>>>>>>>> answer.
>>>>>>>>>            Then I try
>>>>>>>>>                                     to install everything
>>>>>>>>>                                     from scratch. The only prolem is
>>>>>>>>> I
>>>>>>>>> have
>>>>>>>>>            only
>>>>>>>>>                                     MSVC 2103 and the only
>>>>>>>>>                                     option in the selection list of
>>>>>>>>> the
>>>>>>>>> online
>>>>>>>>>                                     installer for MSVC 2013 is
>>>>>>>>>                                     the 64 bit version. Is there
>>>>>>>>> somewhere
>>>>>>>>> an
>>>>>>>>>                                     installer on your website wich
>>>>>>>>>                                     provides a relatively new Qt
>>>>>>>>> version
>>>>>>>>>            with MSVC
>>>>>>>>>                                     2103 32 bit version?
>>>>>>>>>                                     Thank you very much for your
>>>>>>>>> help.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                                 No, but you could compile it from
>>>>>>>>> source
>>>>>>>>>            yourself.
>>>>>>>>>                                 However, note that you cannot build
>>>>>>>>> plugins
>>>>>>>>>            for new
>>>>>>>>>                                 Qt Creator with MSVC 2013 as it uses
>>>>>>>>>            different ABI.
>>>>>>>>>                                 You could use MSVC 2015 or MSVC
>>>>>>>>> 2017.
>>>>>>>>>
>>>>>>>>>                                 Or you could build 64bit version of
>>>>>>>>> Qt
>>>>>>>>>            Creator from
>>>>>>>>>                                 source with that Qt version you have
>>>>>>>>> installed.
>>>>>>>>>
>>>>>>>>>                                 Regards,
>>>>>>>>>                                 Joni
>>>>>>>>>                                 --
>>>>>>>>>                                 Joni Poikelin
>>>>>>>>>                                 Software Engineer,
>>>>>>>>>                                 The Qt Company
>>>>>>>>>>>>>>>>>>                                 FAQs -
>>>>>>>>>            https://wiki.qt.io/KnowledgeBase:SupportFAQ
>>>>>>>>>            <https://wiki.qt.io/KnowledgeBase:SupportFAQ>
>>>>>>>>>
>>>>>>>>> <https://wiki.qt.io/KnowledgeBase:SupportFAQ
>>>>>>>>>            <https://wiki.qt.io/KnowledgeBase:SupportFAQ>>
>>>>>>>>>
>>>>>>>>>                         --
>>>>>>>>>                         Joni Poikelin
>>>>>>>>>                         Software Engineer,
>>>>>>>>>                         The Qt Company
>>>>>>>>>>>>>>>>>>                         FAQs -
>>>>>>>>> https://wiki.qt.io/KnowledgeBase:SupportFAQ
>>>>>>>>>            <https://wiki.qt.io/KnowledgeBase:SupportFAQ>
>>>>>>>>>                         <https://wiki.qt.io/KnowledgeBase:SupportFAQ
>>>>>>>>>            <https://wiki.qt.io/KnowledgeBase:SupportFAQ>>
>>>>>>>>>
>>>>>>>>>                     _______________________________________________
>>>>>>>>>                     Powered by www.kitware.com
>>>>>>>>> <http://www.kitware.com>
>>>>>>>>>            <http://www.kitware.com>
>>>>>>>>>
>>>>>>>>>                     Visit other Kitware open-source projects at
>>>>>>>>>            http://www.kitware.com/opensource/opensource.html
>>>>>>>>>            <http://www.kitware.com/opensource/opensource.html>
>>>>>>>>>
>>>>>>>>> <http://www.kitware.com/opensource/opensource.html
>>>>>>>>>            <http://www.kitware.com/opensource/opensource.html>>
>>>>>>>>>
>>>>>>>>>                     Please keep messages on-topic and check the VTK
>>>>>>>>> FAQ
>>>>>>>>> at:
>>>>>>>>>            http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>>>            <http://www.vtk.org/Wiki/VTK_FAQ>
>>>>>>>>>            <http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>>> <http://www.vtk.org/Wiki/VTK_FAQ>>
>>>>>>>>>
>>>>>>>>>                     Search the list archives at:
>>>>>>>>>            http://markmail.org/search/?q=vtkusers
>>>>>>>>>            <http://markmail.org/search/?q=vtkusers>
>>>>>>>>>                     <http://markmail.org/search/?q=vtkusers
>>>>>>>>>            <http://markmail.org/search/?q=vtkusers>>
>>>>>>>>>
>>>>>>>>>                     Follow this link to subscribe/unsubscribe:
>>>>>>>>>            http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>>>>>            <http://public.kitware.com/mailman/listinfo/vtkusers>
>>>>>>>>>
>>>>>>>>> <http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>>>>>            <http://public.kitware.com/mailman/listinfo/vtkusers>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                 _______________________________________________
>>>>>>>>>                 Powered by www.kitware.com <http://www.kitware.com>
>>>>>>>>>            <http://www.kitware.com>
>>>>>>>>>
>>>>>>>>>                 Visit other Kitware open-source projects at
>>>>>>>>>            http://www.kitware.com/opensource/opensource.html
>>>>>>>>>            <http://www.kitware.com/opensource/opensource.html>
>>>>>>>>>                 <http://www.kitware.com/opensource/opensource.html
>>>>>>>>>            <http://www.kitware.com/opensource/opensource.html>>
>>>>>>>>>
>>>>>>>>>                 Please keep messages on-topic and check the VTK FAQ
>>>>>>>>> at:
>>>>>>>>>            http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>>>            <http://www.vtk.org/Wiki/VTK_FAQ>
>>>>>>>>>            <http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>>> <http://www.vtk.org/Wiki/VTK_FAQ>>
>>>>>>>>>
>>>>>>>>>                 Search the list archives at:
>>>>>>>>>            http://markmail.org/search/?q=vtkusers
>>>>>>>>>            <http://markmail.org/search/?q=vtkusers>
>>>>>>>>>                 <http://markmail.org/search/?q=vtkusers
>>>>>>>>>            <http://markmail.org/search/?q=vtkusers>>
>>>>>>>>>
>>>>>>>>>                 Follow this link to subscribe/unsubscribe:
>>>>>>>>>            http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>>>>>            <http://public.kitware.com/mailman/listinfo/vtkusers>
>>>>>>>>>                 <http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>>>>>            <http://public.kitware.com/mailman/listinfo/vtkusers>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>            _______________________________________________
>>>>>>>>>            Powered by www.kitware.com <http://www.kitware.com>
>>>>>>>>>
>>>>>>>>>            Visit other Kitware open-source projects at
>>>>>>>>>            http://www.kitware.com/opensource/opensource.html
>>>>>>>>>            <http://www.kitware.com/opensource/opensource.html>
>>>>>>>>>
>>>>>>>>>            Please keep messages on-topic and check the VTK FAQ at:
>>>>>>>>>            http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>>> <http://www.vtk.org/Wiki/VTK_FAQ>
>>>>>>>>>
>>>>>>>>>            Search the list archives at:
>>>>>>>>>            http://markmail.org/search/?q=vtkusers
>>>>>>>>>            <http://markmail.org/search/?q=vtkusers>
>>>>>>>>>
>>>>>>>>>            Follow this link to subscribe/unsubscribe:
>>>>>>>>>            http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>>>>>            <http://public.kitware.com/mailman/listinfo/vtkusers>
>>>>>>>>>
>>>>>>>>>        _______________________________________________
>>>>>>>>>        Powered by www.kitware.com <http://www.kitware.com>
>>>>>>>>>
>>>>>>>>>        Visit other Kitware open-source projects at
>>>>>>>>>        http://www.kitware.com/opensource/opensource.html
>>>>>>>>>        <http://www.kitware.com/opensource/opensource.html>
>>>>>>>>>
>>>>>>>>>        Please keep messages on-topic and check the VTK FAQ at:
>>>>>>>>>        http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>>> <http://www.vtk.org/Wiki/VTK_FAQ>
>>>>>>>>>
>>>>>>>>>        Search the list archives at:
>>>>>>>>> http://markmail.org/search/?q=vtkusers
>>>>>>>>>        <http://markmail.org/search/?q=vtkusers>
>>>>>>>>>
>>>>>>>>>        Follow this link to subscribe/unsubscribe:
>>>>>>>>>        http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>>>>>        <http://public.kitware.com/mailman/listinfo/vtkusers>
>>>>>>>>>
>>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Powered by www.kitware.com
>>>>>>>>
>>>>>>>> Visit other Kitware open-source projects at
>>>>>>>> http://www.kitware.com/opensource/opensource.html
>>>>>>>>
>>>>>>>> Please keep messages on-topic and check the VTK FAQ at:
>>>>>>>> http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>>
>>>>>>>> Search the list archives at: http://markmail.org/search/?q=vtkusers
>>>>>>>>
>>>>>>>> Follow this link to subscribe/unsubscribe:
>>>>>>>> http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>


More information about the vtkusers mailing list