[Insight-users] ITK, FLTK and VTK on Mac OS X
Bill Hoffman
bill.hoffman@kitware.com
Tue, 11 Mar 2003 08:16:27 -0500
At 07:45 PM 3/10/2003, Robb Brown wrote:
>>CMake 1.65 should build VTK on OSX. What were the errors?
>
>CMake reports that it failed to compile the VTK extensions (to CMake).
>Then it won't let you generate the make files.
Can you send me the CMakeError.log file when 1.65 fails?
>I have my ITK Applications compiling now with FLTK and VTK (CMake 1.7) by replacing the
>FIND_PACKAGE(X) statements with
>INCLUDE(${CMAKE_ROOT}/Modules/Find{X}.cmake)
The FIND_PACKAGE command is part of 1.7.
>which is the way VTK does it. I also had to change any VTK_WRAP_TCL2() or VTK_WRAP_PYTHON2() commands to omit the 2.
This means that the extensions are still not working for you.
>There's still a little problem where wrapping the vtkITK example into Python (which CMake insists on doing because that's the way VTK was compiled) fails because CMake tries to -L the VTK python modules. This is a problem in the CMakeLists.txt file that I remember having with vtkLocal in the past on the Mac.
>
>What exactly is FIND_PACKAGE? It doesn't seem to be covered in any of the CMake documentation and only CMake 1.65 seems to support it.
>
Here is what Brad posted to the CMake list about FIND_PACKAGE:
This command was added just before the 1.6 release. It is intended to
make it easier to transition other projects into CMake-built projects.
It works as follows:
FIND_PACKAGE(FOO)
1.) Search ${CMAKE_MODULE_PATH} for a file called FindFOO.cmake,
followed by ${CMAKE_ROOT}/Modules. If found, include it and stop.
2.) Create a FOO_DIR cache entry that should be set by the user to a
directory containing a file called FOOConfig.cmake. If set, and
the file exists, it is included.
In case (1), the user usually has to set a bunch of FOO_INCLUDE_DIR,
FOO_LIBRARY, ... variables that are requested by the "find" module. In
case (2), the project knows about CMake and has created a FOOConfig.cmake
containing all the proper settings (VTK and ITK do this). Then the user
need only set FOO_DIR to the location of FOOConfig.cmake, and all the rest
of the settings are loaded automatically.
The idea is that CMake cannot provide a FindFOO.cmake module for every
project FOO. FIND_PACKAGE is a way of generalizing the find mechanism so
projects don't have to use ${CMAKE_ROOT}/Modules for everything.
Eventually some kind of version support may be added too.
>_____________________________
>Robb Brown
>Seaman Family MR Center
>Calgary, AB
>
>_______________________________________________
>Insight-users mailing list
>Insight-users@public.kitware.com
>http://public.kitware.com/mailman/listinfo/insight-users