[CMake] Can't build using NINJA with ITKDCMTK/ITKIODCMTK turned on.

Williams, Norman K norman-k-williams at uiowa.edu
Thu Oct 23 13:32:05 EDT 2014


A couple of years ago, with massive help from Brad King, I managed to get an embedded ExternalProject build of DCMTK embedded into ITK/Modules/ThirdParty.

This was workable, because the CMake dependencies were explicitly set up such that the DCMTK libraries depended on the ExternalProject DCMTK target, and the DCMTKImageIO module depended on the libraries.  When using the CMake with the Makefile generator, this hangs together, because the sub-make in Modules/IO/DCMTK won’t happen until the ExternalProject build in Modules/ThirdParty/DCMTK is complete.

Ninja, on the other hand, makes one flat megamake at the top level of ITK, and if you try and build with Module_ITKDCMTK/Module_ITKIODCMTK/Module_IOTransformDCMTK turned on, it fails immediately because the targets in Modules/IO/DCMTK depend on non-existent DCMTK libraries.

It’s a problem if we support all CMake generators except Ninja.  I like using Ninja because it shaves several seconds off build times, which is great when you’re in an edit/compile/test workflow.

I have no idea how this could be resolved, except to remove the internal DCMTK build and require USE_SYSTEM_DCMTK=ON.  Does anyone have a better idea.


________________________________
Notice: This UI Health Care e-mail (including attachments) is covered by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential and may be legally privileged.  If you are not the intended recipient, you are hereby notified that any retention, dissemination, distribution, or copying of this communication is strictly prohibited.  Please reply to the sender that you have received the message in error, then delete it.  Thank you.
________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20141023/f836774f/attachment.html>


More information about the CMake mailing list