[vtkusers] Build vtk 5.10.1 againt qt 5.0.1

Curator curator at gmx.de
Wed Mar 6 11:26:20 EST 2013


Dear all,

as the title says, ich am trying to build vtk (with VTK_USE_QT=true). 
Unfortunatly, that doesn't work out of the box.

Ich modified the CMake Files of VTKby exchanging

FindPackage(Qt4)
by
FindPackage(Qt5Gui REQUIRED)
FindPackage(Qt5Declarative REQUIRED)
FindPackage(Qt5Webkit REQUIRED)
FindPackage(Qt5OpenGL REQUIRED)
FindPackage(Qt5Xml REQUIRED)
FindPackage(Qt5Transitional REQUIRED)

in the root File and

INCLUDE(${QT_USE_FILE})
by
INCLUDE_DIRECTORIES(${Qt5Widgets_INCLUDE_DIRS})
in all containing CMake Files.

Thus, CMake configure by using
cmake 
-DCMAKE_PREFIX_PATH=../../qt-everywhere-opensource-src-5.0.1/qtbase 
-DVTK_USE_QT=true ,

but the I cant build with VS 2013

The error message states (when building QVTK):
> 1>------ Erstellen gestartet: Projekt: vtkhdf5, Konfiguration: Debug 
> Win32 ------
> 1>  vtkhdf5.vcxproj -> 
> C:\Users\curator\Documents\vtk-5.10.1\VTK5.10.1\bin\Debug\vtkhdf5.lib
> 2>------ Erstellen gestartet: Projekt: QVTK, Konfiguration: Debug 
> Win32 ------
> 2>  vtkQtDebugLeaksView.cxx
> 2>c:\users\curator\documents\qt-everywhere-opensource-src-5.0.1\qtbase\include\qtcore\../../src/corelib/kernel/qobject_impl.h(130): 
> warning C4512: 'QtPrivate::QSlotObjectBase': Zuweisungsoperator konnte 
> nicht generiert werden
> 2> 
> c:\users\curator\documents\qt-everywhere-opensource-src-5.0.1\qtbase\include\qtcore\../../src/corelib/kernel/qobject_impl.h(104): 
> Siehe Deklaration von 'QtPrivate::QSlotObjectBase'
> 2>c:\users\curator\documents\qt-everywhere-opensource-src-5.0.1\qtbase\include\qtcore\../../src/corelib/kernel/qmetatype.h(464): 
> error C2027: Verwendung des undefinierten Typs "vtkObjectBase"
> 2> 
> c:\users\curator\documents\vtk-5.10.1\vtk5.10.1\common\vtkOStreamWrapper.h(32): 
> Siehe Deklaration von 'vtkObjectBase'
> 2> 
> c:\users\curator\documents\qt-everywhere-opensource-src-5.0.1\qtbase\include\qtcore\../../src/corelib/kernel/qmetatype.h(560): 
> Siehe Verweis auf die Instanziierung der gerade kompilierten 
> Klassen-template "QtPrivate::IsPointerToTypeDerivedFromQObject<T>".
> 2>          with
> 2>          [
> 2>              T=vtkObjectBase *
> 2>          ]
> 2> 
> c:\users\curator\documents\qt-everywhere-opensource-src-5.0.1\qtbase\include\qtcore\../../src/corelib/kernel/qmetatype.h(590): 
> Siehe Verweis auf die Instanziierung der gerade kompilierten 
> Klassen-template "QtPrivate::QMetaTypeTypeFlags<T>".
> 2>          with
> 2>          [
> 2>              T=vtkObjectBase *
> 2>          ]
> 2> 
> c:\users\curator\documents\qt-everywhere-opensource-src-5.0.1\qtbase\include\qtcore\../../src/corelib/kernel/qmetatype.h(618): 
> Siehe Verweis auf die Instanziierung der gerade kompilierten 
> Funktions-template "int qRegisterNormalizedMetaType<T>(const 
> QByteArray &,T 
> *,QtPrivate::MetaTypeDefinedHelper<T,defined>::DefinedType)".
> 2>          with
> 2>          [
> 2>              T=vtkObjectBase *,
> 2>              defined=true
> 2>          ]
> 2>          vtkQtDebugLeaksView.cxx(208): Siehe Verweis auf die 
> Instanziierung der gerade kompilierten Funktions-template "int 
> qRegisterMetaType<vtkObjectBase*>(const char *,T 
> *,QtPrivate::MetaTypeDefinedHelper<T,defined>::DefinedType)".
> 2>          with
> 2>          [
> 2>              T=vtkObjectBase *,
> 2>              defined=true
> 2>          ]
> 2>c:\users\curator\documents\qt-everywhere-opensource-src-5.0.1\qtbase\include\qtcore\../../src/corelib/kernel/qmetatype.h(464): 
> error C2338: Type argument of Q_DECLARE_METATYPE(T*) must be fully 
> defined
> ========== Erstellen: 1 erfolgreich, 1 fehlerhaft, 39 aktuell, 0 
> übersprungen ========== 

Does anyone have tried it earlier? Am I on the right way or totally wrong?

Thank you very much,
curator



More information about the vtkusers mailing list