Template:VTKQtCMakeLists: Difference between revisions
Line 54: | Line 54: | ||
==Download and Build {{{1}}}== | ==Download and Build {{{1}}}== | ||
Click [ | Click [https://github.com/lorensen/VTKWikiExamplesTarballs/raw/master/{{{1}}}.tar here to download {{{1}}}]. and its ''CMakeLists.txt'' file. | ||
Once the tarball ''{{{1}}}.tar'' has been downloaded and extracted, | Once the tarball ''{{{1}}}.tar'' has been downloaded and extracted, |
Revision as of 15:18, 16 April 2015
CMakeLists.txt
<syntaxhighlight lang="cmake"> cmake_minimum_required(VERSION 2.8)
if(POLICY CMP0020)
cmake_policy(SET CMP0020 NEW)
endif()
PROJECT({{{1}}})
find_package(VTK REQUIRED) include(${VTK_USE_FILE})
if(${VTK_VERSION} VERSION_GREATER "6" AND VTK_QT_VERSION VERSION_GREATER "4")
# Instruct CMake to run moc automatically when needed. set(CMAKE_AUTOMOC ON) find_package(Qt5Widgets REQUIRED QUIET)
else()
find_package(Qt4 REQUIRED) include(${QT_USE_FILE})
endif()
include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
file(GLOB UI_FILES *.ui) file(GLOB QT_WRAP *.h) file(GLOB CXX_FILES *.cxx)
if(${VTK_VERSION} VERSION_GREATER "6" AND VTK_QT_VERSION VERSION_GREATER "4")
qt5_wrap_ui(UISrcs ${UI_FILES} ) # CMAKE_AUTOMOC in ON so the MocHdrs will be automatically wrapped. add_executable({{{1}}} MACOSX_BUNDLE ${CXX_FILES} ${UISrcs} ${QT_WRAP}) qt5_use_modules({{{1}}} Core Gui) target_link_libraries({{{1}}} ${VTK_LIBRARIES})
else()
QT4_WRAP_UI(UISrcs ${UI_FILES}) QT4_WRAP_CPP(MOCSrcs ${QT_WRAP}) add_executable({{{1}}} MACOSX_BUNDLE ${CXX_FILES} ${UISrcs} ${MOCSrcs})
if(VTK_LIBRARIES) if(${VTK_VERSION} VERSION_LESS "6") target_link_libraries({{{1}}} ${VTK_LIBRARIES} QVTK) else() target_link_libraries({{{1}}} ${VTK_LIBRARIES}) endif() else() target_link_libraries({{{1}}} vtkHybrid QVTK vtkViews ${QT_LIBRARIES}) endif()
endif()
</syntaxhighlight>
Download and Build {{{1}}}
Click here to download {{{1}}}. and its CMakeLists.txt file.
Once the tarball {{{1}}}.tar has been downloaded and extracted,
cd {{{1}}}/build
This example requires Qt and VTK.
- If VTK and Qt are installed:
cmake ..
- If VTK is not installed but compiled on your system, you will need to specify the path to your VTK build:
cmake -DVTK_DIR:PATH=/home/me/vtk_build ..
- If Qt is not found on your system, you will need to tell CMake where to find qmake:
cmake -DQT_QMAKE_EXECUTABLE:FILEPATH=/usr/something/qmake ..
Build the project:
make
and run it:
./{{{1}}}
WINDOWS USERS PLEASE NOTE: Be sure to add the VTK bin directory to your path. This will resolve the VTK dll's at run time. You may also need to add a Qt related path.