Which one you think it is? KWSys???
KWSys should respect that, as it does that while being part of ITK. Maybe Blueberry or mbilog?
I removed the KWSys from ITK and imported the original from Kitwareās repo : https://gitlab.kitware.com/utils/kwsys
It has nothing to do anymore!
Can you check why CTKmitk is not compiling with this error:
Creating library G:/programming/cpp/CTK/build/CTK-build/bin/Debug/CTKmitk.lib and object G:/programming/cpp/CTK/build/CTK-build/bin/Debug/CTKmitk.exp
[build] mitkException.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl itk::ExceptionObject::operator==(class itk::ExceptionObject const &)const " (??8ExceptionObject@itk@@UEBA_NAEBV01@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl itk::ExceptionObject::operator==(class itk::ExceptionObject const &)const " (??8ExceptionObject@itk@@UEBA_NAEBV01@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: __cdecl itk::SimpleFastMutexLock::SimpleFastMutexLock(void)" (??0SimpleFastMutexLock@itk@@QEAA@XZ) referenced in function "void __cdecl `dynamic initializer for 'logMutex''(void)" (??__ElogMutex@@YAXXZ) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: __cdecl itk::SimpleFastMutexLock::~SimpleFastMutexLock(void)" (??1SimpleFastMutexLock@itk@@QEAA@XZ) referenced in function "void __cdecl `dynamic atexit destructor for 'logMutex''(void)" (??__FlogMutex@@YAXXZ) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: void __cdecl itk::SimpleFastMutexLock::Lock(void)const " (?Lock@SimpleFastMutexLock@itk@@QEBAXXZ) referenced in function "public: virtual void __cdecl mitk::LoggingBackend::ProcessMessage(class mbilog::LogMessage const &)" (?ProcessMessage@LoggingBackend@mitk@@UEAAXAEBVLogMessage@mbilog@@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: void __cdecl itk::SimpleFastMutexLock::Unlock(void)const " (?Unlock@SimpleFastMutexLock@itk@@QEBAXXZ) referenced in function "public: virtual void __cdecl mitk::LoggingBackend::ProcessMessage(class mbilog::LogMessage const &)" (?ProcessMessage@LoggingBackend@mitk@@UEAAXAEBVLogMessage@mbilog@@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] G:\programming\cpp\CTK\build\CTK-build\bin\Debug\CTKmitk.dll : fatal error LNK1120: 5 unresolved externals [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
Creating library G:/programming/cpp/CTK/build/CTK-build/bin/Debug/CTKmitk.lib and object G:/programming/cpp/CTK/build/CTK-build/bin/Debug/CTKmitk.exp
[build] mitkException.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl itk::ExceptionObject::operator==(class itk::ExceptionObject const &)const " (??8ExceptionObject@itk@@UEBA_NAEBV01@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl itk::ExceptionObject::operator==(class itk::ExceptionObject const &)const " (??8ExceptionObject@itk@@UEBA_NAEBV01@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: __cdecl itk::SimpleFastMutexLock::SimpleFastMutexLock(void)" (??0SimpleFastMutexLock@itk@@QEAA@XZ) referenced in function "void __cdecl `dynamic initializer for 'logMutex''(void)" (??__ElogMutex@@YAXXZ) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: __cdecl itk::SimpleFastMutexLock::~SimpleFastMutexLock(void)" (??1SimpleFastMutexLock@itk@@QEAA@XZ) referenced in function "void __cdecl `dynamic atexit destructor for 'logMutex''(void)" (??__FlogMutex@@YAXXZ) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: void __cdecl itk::SimpleFastMutexLock::Lock(void)const " (?Lock@SimpleFastMutexLock@itk@@QEBAXXZ) referenced in function "public: virtual void __cdecl mitk::LoggingBackend::ProcessMessage(class mbilog::LogMessage const &)" (?ProcessMessage@LoggingBackend@mitk@@UEAAXAEBVLogMessage@mbilog@@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] mitkLog.obj : error LNK2019: unresolved external symbol "public: void __cdecl itk::SimpleFastMutexLock::Unlock(void)const " (?Unlock@SimpleFastMutexLock@itk@@QEBAXXZ) referenced in function "public: virtual void __cdecl mitk::LoggingBackend::ProcessMessage(class mbilog::LogMessage const &)" (?ProcessMessage@LoggingBackend@mitk@@UEAAXAEBVLogMessage@mbilog@@@Z) [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
[build] G:\programming\cpp\CTK\build\CTK-build\bin\Debug\CTKmitk.dll : fatal error LNK1120: 5 unresolved externals [G:\programming\cpp\CTK\build\CTK-build\Libs\mitk\CTKmitk.vcxproj] [G:\programming\cpp\CTK\build\CTK.vcxproj]
Why is it that itk & mbilog are linking but not mitk (libraries look at structure in Libs)
I found out from CTK developers easier way to integrate external dependencies without going through rough modifications.
The solution continues on github https://github.com/commontk/CTK/issues/949
I think I also mentioned using external project approach to you instead of modifying the libraries. JC has more experience in build systems than me, and he is also one of the maintainers of CTK. And your fork of CTK has more to do with CTK than ITK
@dzenanz Iām sorry if I didnāt get it when you proposed it and thatās because I am a noob in CMake and large project.
But I am learning a lot here due to exchanging ideas and trying to understand few bits and pieces.
I appreciate your support.