Difference between revisions of "Slicer3:Developers:Projects:QtSlicer/Tutorials/CompileWithQt"

From Slicer Wiki
Jump to: navigation, search
Line 2: Line 2:
 
= Building Slicer with Qt =
 
= Building Slicer with Qt =
  
* Download and install Qt.  As of winter 2009, get the [http://qt.nokia.com/doc/4.6/qt4-6-intro.html 4.6 version].
+
* [http://qt.nokia.com/downloads Download and install Qt].  As of winter 2009, get the [http://qt.nokia.com/doc/4.6/qt4-6-intro.html 4.6 version].
** Windows - need to get source code and build with <code>configure.exe -platform msvc2008</code> run <code>vcvars32.bat</code> first and then <code>nmake</code>.
+
** Windows - need to get [http://qt.nokia.com/downloads source code] and build with <code>configure.exe -platform msvc2008</code> run <code>vcvars32.bat</code> first and then <code>nmake</code>.
 
*** building with webkit support requires that <i>src/3rdparty/webkit/WebCore/tmp/moc/{debug,release}_shared/mocinclude.tmp</i> be removed. else you will get linker errors like <code>QNetworkReplyHandler.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall WebCore::FormDataIODevice::metaObject(void)const (?metaObject@FormDataIODevice@WebCore@@UBEPBUQMetaObject@@XZ)</code>
 
*** building with webkit support requires that <i>src/3rdparty/webkit/WebCore/tmp/moc/{debug,release}_shared/mocinclude.tmp</i> be removed. else you will get linker errors like <code>QNetworkReplyHandler.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall WebCore::FormDataIODevice::metaObject(void)const (?metaObject@FormDataIODevice@WebCore@@UBEPBUQMetaObject@@XZ)</code>
 
** Linux/Mac - install full QtCreator package (snowleopard not yet supported in 4.5.2)
 
** Linux/Mac - install full QtCreator package (snowleopard not yet supported in 4.5.2)

Revision as of 02:57, 15 December 2009

Home < Slicer3:Developers:Projects:QtSlicer < Tutorials < CompileWithQt

QtSlicer/Tutorials

Building Slicer with Qt

  • Download and install Qt. As of winter 2009, get the 4.6 version.
    • Windows - need to get source code and build with configure.exe -platform msvc2008 run vcvars32.bat first and then nmake.
      • building with webkit support requires that src/3rdparty/webkit/WebCore/tmp/moc/{debug,release}_shared/mocinclude.tmp be removed. else you will get linker errors like QNetworkReplyHandler.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall WebCore::FormDataIODevice::metaObject(void)const (?metaObject@FormDataIODevice@WebCore@@UBEPBUQMetaObject@@XZ)
    • Linux/Mac - install full QtCreator package (snowleopard not yet supported in 4.5.2)
cd Slicer3-lib
mkdir Qt
mkdir Qt-build
cd Qt
wget http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.0.tar.gz
tar xvfz qt-everywhere-opensource-src-4.6.0-beta1.tar.gz
cd qt-everywhere-opensource-src-4.6.0-beta1
echo yes | ./configure -prefix ../../Qt-build -debug-and-release -opensource  -no-qt3support 
make -j 16
make install
  • Build VTK with Qt enabled
cd ../../VTK-build
../CMake-build/bin/ccmake .
Press 't' to enter advanced mode.
VTK_USE_GUISUPPORT to ON
Press 'c' to configure.
VTK_USE_QVTK to ON
DESIRED_QT_VERSION to 4
Press 'c' to configure.
QT_QMAKE_EXECUTABLE to {path to}/Slicer3-lib/Qt-build/bin/qmake
Press 'g' to generate
make -j16
  • Build Slicer with Qt enabled.
cd ../../Slicer3-build
../Slicer3-lib/CMake-build/bin/ccmake .
Slicer3_USE_QT ON
Press 'c' to configure
QT_QMAKE_EXECUTABLE to {path to}/Slicer3-lib/Qt-build/bin/qmake
Press 'c' to configure and then press 'g' to generate.
make -j16

Useful links for Qt