[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