[Insight-developers] Expected behavior for shared libraries on windows
Brad King
brad.king at kitware.com
Wed Apr 4 11:04:44 EDT 2012
On 4/4/2012 10:50 AM, Bradley Lowekamp wrote:
> As I am compiling for windows I am only getting the following dll when shared libaries are turn on:
>
> ITKCommon-4.1.dll
> FactoryTestLib.dll
> FileFreeTestLib.dll
>
> That is it... nothing else is shared.
This has never been supported other than for ITKCommon.
The explanation is just a few lines above the line you linked:
https://github.com/Kitware/ITK/blob/master/CMake/ITKSetStandardCompilerFlags.cmake#L163
# Some libraries (e.g. vxl libs) have no dllexport markup, so we can
# build full shared libraries only with the GNU toolchain. For non
# gnu compilers on windows, only Common is shared. This allows for
# plugin type applications to use a dll for ITKCommon which will contain
# the static for Modified time.
dllexport markup would have to be propagated through the vnl explicit
instantiations. Compiler-specific extensions are needed to dllimport
explicit instantiations. See here for details:
http://www.itk.org/Wiki/Proposals:Explicit_Instantiation
The vxl folks are not interested in mangling their code with such
markup.
-Brad K
More information about the Insight-developers
mailing list