<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="-1"><font face="Arial">Hello,<br>
<br>
I'd like to bring back the thread
<a class="moz-txt-link-freetext" href="http://www.itk.org/pipermail/insight-users/2011-December/043218.html">http://www.itk.org/pipermail/insight-users/2011-December/043218.html</a>,
because it seems to me that there is still something broken in
ITKv4 comipilation with ITK_USE_SYSTEM_GDCM (GDCM 2.x).<br>
<br>
Despite the corrections made in
<a class="moz-txt-link-freetext" href="http://review.source.kitware.com/#/c/1712/">http://review.source.kitware.com/#/c/1712/</a>, I find it strange
that we must make-install GDCM even if we're compiling/linking
ITK with GDCM's build tree (as described in the thread above).
The make-install solution only works if the installation folder
is a "system" folder, which is added to the link directives by
default. I think it's even a dangerous solution if we are, eg,
testing a new GDCM version and trying to link with its own build
tree, while "silently" linking with an old (previously
make-installed) version, since the latter is the one the linker
will actually find. <br>
<br>
Patching
ITK_SOURCE_DIR/Modules/ThirdParty/GDCM/itk-module-init.cmake as
below <br>
<br>
###<br>
option(ITK_USE_SYSTEM_GDCM "Use an outside build of GDCM." OFF)<br>
mark_as_advanced(ITK_USE_SYSTEM_GDCM)<br>
<br>
if(ITK_USE_SYSTEM_GDCM)<br>
find_package(GDCM REQUIRED)<br>
+ include(${GDCM_USE_FILE})<br>
endif()<br>
###<br>
<br>
seems to solve the problem.<br>
<br>
However, ITKConfig doesn't import the library paths exported by
GDCM, so in the end I get "-lgdcmXXX not found" erros when
linking my program with ITKv4 + (a non-make-installed)
SYSTEM_GDCM. After building ITK, I noticed that </font></font><font
size="-1"><font face="Arial"><font size="-1"><font face="Arial">ITKGDCM_LIBRARY_DIRS
is empty </font></font>in (BUILD or
INSTALL)_DIR/lib/cmake/ITK-4.2/Modules/ITKGDCM.cmake, in
contrast with ITKGDCM_INCLUDE_DIRS, which does contain the right
paths (i.e., those exported by GDCM). Manually updating </font></font><font
size="-1"><font face="Arial"><font size="-1"><font face="Arial"><font
size="-1"><font face="Arial">ITKGDCM_LIBRARY_DIRS does
solve the problem, but I'm not a cmake expert and
couldn't find which file(s) should be patched so that
things work as I would expect. <br>
<br>
Does anyone have faced this problem as well?<br>
Kind regards,<br>
<br>
Rômulo<br>
</font></font></font></font> </font></font>
<pre class="moz-signature" cols="72">--
Rômulo PINHO
Post-doc Research Engineer
Centre Léon Bérard
28, rue Laennec 69373
Lyon, France
+33 (0)4 78 78 51 50
<a class="moz-txt-link-abbreviated" href="mailto:romulo.pinho@lyon.unicancer.fr">romulo.pinho@lyon.unicancer.fr</a>
<a class="moz-txt-link-freetext" href="http://www.creatis.insa-lyon.fr/rio/RomuloPinho">http://www.creatis.insa-lyon.fr/rio/RomuloPinho</a>
</pre>
</body>
</html>