diff --git a/cmake/PackageDepends/RTTB_DCMTK_Config.cmake b/cmake/PackageDepends/RTTB_DCMTK_Config.cmake
index 821a2f5..3c5ed2f 100644
--- a/cmake/PackageDepends/RTTB_DCMTK_Config.cmake
+++ b/cmake/PackageDepends/RTTB_DCMTK_Config.cmake
@@ -1,10 +1,18 @@
 if(NOT WIN32 AND NOT APPLE)
   set(MISSING_LIBS_REQUIRED_BY_DCMTK tiff z)
 endif()
 
-if(NOT DCMTK_FOUND)
-  find_package(DCMTK NO_MODULE REQUIRED)
-endif()
+foreach(dcmtk_component ${DCMTK_REQUIRED_COMPONENTS_BY_MODULE})
+  set(dcmtk_component "DCMTK::${dcmtk_component}")
+  list(APPEND _dcmtk_required_components_by_module ${dcmtk_component})
+endforeach()
+
+find_package(DCMTK COMPONENTS ${_dcmtk_required_components_by_module} REQUIRED)
+
+foreach(dcmtk_component ${_dcmtk_required_components_by_module})
+  list(APPEND ALL_LIBRARIES ${dcmtk_component})
+endforeach()
+
 
 list(APPEND ALL_INCLUDE_DIRECTORIES ${DCMTK_INCLUDE_DIRS})
-list(APPEND ALL_LIBRARIES ${DCMTK_LIBRARIES} ${MISSING_LIBS_REQUIRED_BY_DCMTK})
\ No newline at end of file
+list(APPEND ALL_LIBRARIES ${MISSING_LIBS_REQUIRED_BY_DCMTK})
\ No newline at end of file
diff --git a/code/io/dicom/CMakeLists.txt b/code/io/dicom/CMakeLists.txt
index ca7dd15..8862ccc 100644
--- a/code/io/dicom/CMakeLists.txt
+++ b/code/io/dicom/CMakeLists.txt
@@ -1 +1 @@
-RTTB_CREATE_MODULE(RTTBDicomIO DEPENDS PUBLIC RTTBCore RTTBAlgorithms PACKAGE_DEPENDS PUBLIC DCMTK PRIVATE Boost|filesystem)
+RTTB_CREATE_MODULE(RTTBDicomIO DEPENDS PUBLIC RTTBCore RTTBAlgorithms PACKAGE_DEPENDS PUBLIC DCMTK|dcmdata+ofstd+dcmrt PRIVATE Boost|filesystem)