<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'><div style="text-align: left;">Luis,<br><br>I remember trying to compile the demons registration example under MinGW and static-linking it to ITK - I think the exe file was something about 4 MB or so. Regardless of everything else, just think of the process in this way: the linker has to 'generate' a big binary file for static linking (a few MB) comparing to the shared linking version (of the order of 0.1 MB). This binary 'generation' is a slow one which you may not feel when compiling the shared-lib ITK once and linking against it many times. But it becomes a pain when you have to static-link your exe many times.<br><br>I did not do any profiling on this, but try the demons registration example, qualitatively, it felt like the linking time linearly increased with the output binary size.<br><br></div>&gt; <br>&gt; <br>&gt; Hi Ali,<br>&gt; <br>&gt; &gt; <br>&gt; &gt; Even if there were no eroors, ITK under MinGW is not really useful<br>&gt; &gt; right now, ITK is a big template-basd library and static-linking it<br>&gt; &gt; to your binary will be a slow-long process.<br>&gt; <br>&gt; <br>&gt; <br>&gt; I'm not quite sure the statement above makes sense.<br>&gt; <br>&gt; <br>&gt; 1) Yes, ITK is an almost fully templated library<br>&gt; <br>&gt; 2) Whether you build it as shared or static library,<br>&gt;     a very small fraction of the code goes into that library<br>&gt; <br>&gt; 3) Most of the code of ITK is actually compiled when you<br>&gt;     compile your application, not when you build ITK.<br>&gt; <br>&gt; <br>&gt; The difference between using static or shared when building<br>&gt; ITK libraries, make that the linking time of your application<br>&gt; will change by a small fraction. Linking is in itself a small<br>&gt; fraction of the build time compared to compilation itself.<br>&gt; <br>&gt; <br>&gt; <br>&gt;     Regards,<br>&gt; <br>&gt; <br>&gt;        Luis<br>&gt; <br>&gt; <br>&gt; <br>&gt; --------------<br>&gt; Ali - wrote:<br>&gt; &gt; Thomas,<br>&gt; &gt; <br>&gt; &gt; ITK could be compiled on MinGW only as a static library -- when the <br>&gt; &gt; shared-lib flag was on there were linking errors. There were attempts to <br>&gt; &gt; solve these issue just before the 3.4 release, but it didn't get <br>&gt; &gt; anywhere. The errors that you reported could be some side effects of <br>&gt; &gt; those attempts.<br>&gt; &gt; <br>&gt; &gt; Even if there were no eroors, ITK under MinGW is not really useful right <br>&gt; &gt; now, ITK is a big template-basd library and static-linking it to your <br>&gt; &gt; binary will be a slow-long process.<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; Hi ITK users<br>&gt; &gt; <br>&gt; &gt; Between ITK v 3.2.0 and v 3.4.0, the file<br>&gt; &gt; ITK/Utilities/itkjpeg/jconfig.h.in had been modified in the line 24.<br>&gt; &gt; In 3.2.0 version the line was :<br>&gt; &gt;              #if defined (_WIN32) &amp;&amp; !(defined(__CYGWIN__) ||<br>&gt; &gt; defined(__MINGW32__))<br>&gt; &gt; In 3.4.0 version the line is :<br>&gt; &gt;              #if defined (_WIN32) &amp;&amp; !defined(__CYGWIN__)<br>&gt; &gt; <br>&gt; &gt; On my MinGW platform, the ITK 3.2.0 compiling with success.<br>&gt; &gt; But the new version 3.4.0 generate this compiling error :<br>&gt; &gt; [  5%] Building C object<br>&gt; &gt; Utilities/itktiff/CMakeFiles/itktiff.dir/tif_jpeg.obj<br>&gt; &gt; In file included from<br>&gt; &gt; G:/OTB-DART-NIGHTLY/sources/InsightToolkit-3.4.0/Utilities/itktiff/tif_jpeg.c:74: <br>&gt; &gt; <br>&gt; &gt; G:/OTB-DART-NIGHTLY/nightly/mingw/outils/binaries/static/debug/itk-3.4.0-MinGW/Utilities/itkjpeg/8/jpeglib.h:99: <br>&gt; &gt; <br>&gt; &gt; parse error before "boolean"<br>&gt; &gt; G:/OTB-DART-NIGHTLY/nightly/mingw/outils/binaries/static/debug/itk-3.4.0-MinGW/Utilities/itkjpeg/8/jpeglib.h:115: <br>&gt; &gt; <br>&gt; &gt; parse error before "boolean"<br>&gt; &gt; G:/OTB-DART-NIGHTLY/nightly/mingw/outils/binaries/static/debug/itk-3.4.0-MinGW/Utilities/itkjpeg/8/jpeglib.h:167: <br>&gt; &gt; <br>&gt; &gt; parse error before "boolean"<br>&gt; &gt; G:/OTB-DART-NIGHTLY/nightly/mingw/outils/binaries/static/debug/itk-3.4.0-MinGW/Utilities/itkjpeg/8/jpeglib.h:182: <br>&gt; &gt; <br>&gt; &gt; parse error before '*' token<br>&gt; &gt; :<br>&gt; &gt; :<br>&gt; &gt; (with CMake v 2.4.6)<br>&gt; &gt; <br>&gt; &gt; Could you help me, How can I solve my problem ?<br>&gt; &gt; <br>&gt; &gt; Thanks,<br>&gt; &gt; Thomas<br>&gt; &gt; <br>&gt; &gt; ------------------------------------------------------------------------<br>&gt; &gt; Are you the Quizmaster? Play BrainBattle with a friend now! <br>&gt; &gt; &lt;http://specials.uk.msn.com/brainbattle&gt;<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; ------------------------------------------------------------------------<br>&gt; &gt; <br>&gt; &gt; _______________________________________________<br>&gt; &gt; Insight-users mailing list<br>&gt; &gt; Insight-users@itk.org<br>&gt; &gt; http://www.itk.org/mailman/listinfo/insight-users<br><br /><hr />Get free emoticon packs and customisation from Windows Live.  <a href='http://www.pimpmylive.co.uk' target='_new'>Pimp My Live!</a></body>
</html>