[CMake] Bump -- CMAKE_INSTALL_PREFIX weirdness.

kent williams nkwmailinglists at gmail.com
Thu May 22 17:36:22 EDT 2008


I'll ask this again.

We use a build system that for better or worse, invokes cmake from a
Makefile to configure ITK, VTK, KWWidgets etc.

In other words we have a command invoked from gnu make that looks like this:
cmake  /scratch/kent/brains2/iplFreeware/unpackdir/Insight
-DCMAKE_INSTALL_PREFIX:PATH=/scratch/kent/brains2/MACOSX/DEBUG/src \
-DCMAKE_SKIP_RPATH:BOOL=ON -DCMAKE_BUILD_TYPE:STRING=Debug
-DCMAKE_CXX_COMPILER:FILEPATH="c++ " \
-DCMAKE_CXX_FLAGS:STRING=" -bind_at_load  -g -UNDEBUG -Wall
-Wcast-qual -UITKIO_DEPRECATED_METADATA_ORIENTATION "
-DCMAKE_CXX_FLAGS_RELEASE:STRING=" -bind_at_load  -g -UNDEBUG -Wall
-Wcast-qual -UITKIO_DEPRECATED_METADATA_ORIENTATION "
-DCMAKE_CXX_FLAGS_DEBUG:STRING=" -bind_at_load  -g -UNDEBUG -Wall
-Wcast-qual -UITKIO_DEPRECATED_METADATA_ORIENTATION "

etc etc etc.

The problem is that about half the time, the CMakeCache.txt file gets
written with CMAKE_INSTALL_PREFIX as /usr/local, even though it has
been overriden on the command line.

This happens with ITK, VTK, KWWidgets, etc.

The workaround is when the build dies, delete CMakeCache.txt, and run
the build again.

My boss ran into the same problem on his system so it isn't something
I've screwed up on my machine.  He asked me "did you log a bug with
Kitware about it?" and the answer was "no" -- I've tried making a
simple example that illustrates the problem, and the problem doesn't
occur.

But I'm at a loss as to how we've gotten this Heisenberg problem,
where sometimes CMake writes the wrong Path into the build.

Any suggestions on how to debug this?


More information about the CMake mailing list