[Insight-developers] multiple shared ITK libraries on windows

Bill Lorensen bill.lorensen at gmail.com
Wed Mar 16 18:24:18 EDT 2011


Here's a question.

In old ITK, there were 15 shared libraries. Because of vnl
limitations, Bill Hoffman says there should only be 8 (my calculation
and ITKCommon is the only one that is core ITK). With ITK modular
there are potentially 45 (my calculation, not counting tests) shared
libs. Supporting shared libs on windows platforms requires special
magic.

Should we build any shared libs in ITK modular on windows platforms?
Is the maintenance burden too high?

Bill

On Wed, Mar 16, 2011 at 5:45 PM, Bill Lorensen <bill.lorensen at gmail.com> wrote:
> I have not seen a problem. Nothing was failing. But if there are
> issues, then please feel free to fix them in ITK modular.
>
> I guess there was not sufficient documentation (or corporate history)
> to stop the [patch.
>
>
> On Wed, Mar 16, 2011 at 5:13 PM, Bill Hoffman <bill.hoffman at kitware.com> wrote:
>> I am including you all because you were involved in this patch:
>>
>> http://review.source.kitware.com/#change,419
>>
>> I did not notice this one go into ITK.  If I had, I would have raised some
>> concerns...  I was the one the did the original ITKCommon only shared
>> approach.   There was a good reason to only make one library shared.  That
>> reason is that the vnl libraries do not have the export markup for windows.
>>   With this patch, you will end up with multiple copies of symbols from vnl
>> being in each of the .dll files in ITK.  This "might" not be a problem, as
>> long as RTTI is not used, and there are not static members of classes in
>> vnl.  I am not sure both of those are true.  The problems would be very
>> subtle and only show up once and a while.
>>
>> Basically, each ITK dll will have its own copy of any globals found in vln.
>>  They will all be able to have different values.
>>
>> -Bill
>>
>>
>


More information about the Insight-developers mailing list