[Insight-developers] make install fails with ITK-3.8 and CMake 2.6.0

Tom Vercauteren tom.vercauteren at m4x.org
Wed Jul 30 12:15:52 EDT 2008


Hi,

I just tried compiling and installing ITK 3.8 and had to manually
tweak Code/IO/cmake_install.cmake. This looks like a cmake bug but I
am not sure. Hence I haven't filed bug report yet. Let me know if you
know where this bugs belongs to.


Now the actual description of the bug. If I use the standard procedure
  1) ccmake path_to_sources
  2) make
  3) make install
I end up with the following error:

-----------------
CMake Error at Code/IO/cmake_install.cmake:42 (FILE):
  file INSTALL cannot find file
  "/usr/local/mkt-dev/install/itk-3.8.0-patched/RelWithDebInfo/bin/itkTestDriver"
  to install.
Call Stack (most recent call first):
  Code/cmake_install.cmake:43 (INCLUDE)
  cmake_install.cmake:50 (INCLUDE)


make: *** [install] Error 1
----------------


Apparently the problem arises just before line 42:

    IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/itkTestDriver")
      FILE(RPATH_CHECK
           FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/itkTestDriver"
           RPATH "")
    ENDIF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/itkTestDriver")
    FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE
EXECUTABLE FILES
"/usr/local/mkt-dev/install/itk-3.8.0-patched/RelWithDebInfo/bin/itkTestDriver")


I have added some debug messages and saw that the guilty line is

   FILE(RPATH_CHECK
           FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/itkTestDriver"
           RPATH "")

Before that line itkTestDriver exists an afterwards it is deleted.

Commenting that line seems to work for me.

As I mentioned, this looks like a cmake bug to me but I am not sure.

Below is some information about the setup I used:

Ubuntu Hardy
ccmake version 2.6-patch 0
ITK 3.8 with the following parameters
  - BUILD_SHARED_LIBS ON
  - BUILD_TESTING OFF
  - ITK_USE_REVIEW ON

Let me know if you need more information.



As a side question, I was wondering why the ITK tarballs contained the
CVS repositories. Wouldn't it be cleaner to use a cvs export to strip
these directories?

Regards,
Tom


More information about the Insight-developers mailing list