[SOLVED] Building dynamic libraries *d.dll vs *.dll

Hello,
is there any difference between libraries built with *d.dll or *.dll? They are in different folder (Debug/RelWithDebInfo).
(Example: ITKCommon-4.13d.dll built in Debug mode, ITKCommon-4.13.dll built in RelWithDebInfo mode).

Does this mean anything for dependend project?
I ask because after recompiling ITK another project (also recompiled) is still looking for the *.dll version.
Some people suggesting manualy renaming the files.

Thanks in advance.
Gordian

You will need to compile your own project with the same configuration you used to compile ITK.

Do not manually rename the files; I’d dare to say that their size will be different, and thus so will their contents be concerning some platform/optimization aspects.

1 Like

If you use CMake to configure your own project, which is the only way that is supported (it is technically possible to do without but it is a lot of hacking and prone to a lot of errors), you just have to do what @jhlegarreta said, which is to compile ITK and your project with the same configuration. Your project will link against the corresponding ITK compilation. So if you want to compile your project in debug and RelWithDebInfo, you will need to compile ITK in both configurations.

2 Likes

Thanks you for the support.
After recompiling all requested projects in the same configurations it works.