VTK/Sandbox/UseCMakeListsTemplate: Difference between revisions

From KitwarePublic
< VTK‎ | Sandbox
Jump to navigationJump to search
No edit summary
(test)
Line 1: Line 1:
{{VTKCMakeLists|Thing1}}
{{VTKCMakeLists|
project(SystemInfo CXX)
message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION})
message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR})
if(${CMAKE_SYSTEM_NAME} STREQUAL Windows)
if(MSVC)
message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION})
endif(MSVC)
if(BORLAND)
message(STATUS "Compiler: BCC")
endif(BORLAND)
else(${CMAKE_SYSTEM_NAME} STREQUAL Linux)
message(STATUS "Only GCC is supported on Linux")
endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows)
message(STATUS "CMake generates " ${CMAKE_GENERATOR})
}}

Revision as of 12:34, 4 November 2010

Please try the new VTKExamples website.

CMakeLists.txt

<syntaxhighlight lang="cmake"> cmake_minimum_required(VERSION 2.8)

PROJECT( project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR}) )

find_package(VTK REQUIRED) include(${VTK_USE_FILE})

add_executable( project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR})

MACOSX_BUNDLE 

project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR}) .cxx)

if(VTK_LIBRARIES)

 target_link_libraries(

project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR})

${VTK_LIBRARIES})

else()

 target_link_libraries(

project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR})

vtkHybrid vtkWidgets)

endif() </syntaxhighlight>

==Download and Build project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR}) == Click [https://github.com/lorensen/VTKWikiExamplesTarballs/raw/master/ project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR}) .tar here to download project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR}) ]. and its CMakeLists.txt file.

Once the tarball project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR}) .tar has been downloaded and extracted,

cd 

project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR}) /build

  • If VTK is 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 ..

Build the project:

make

and run it:

./

project(SystemInfo CXX) message(STATUS "System: " ${CMAKE_SYSTEM_NAME} " " ${CMAKE_SYSTEM_VERSION}) message(STATUS "Processor: " ${CMAKE_HOST_SYSTEM_PROCESSOR}) if(${CMAKE_SYSTEM_NAME} STREQUAL Windows) if(MSVC) message(STATUS "Compiler: MSVC, version: " ${MSVC_VERSION}) endif(MSVC) if(BORLAND) message(STATUS "Compiler: BCC") endif(BORLAND) else(${CMAKE_SYSTEM_NAME} STREQUAL Linux) message(STATUS "Only GCC is supported on Linux") endif(${CMAKE_SYSTEM_NAME} STREQUAL Windows) message(STATUS "CMake generates " ${CMAKE_GENERATOR})


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.