diff --git a/CMakeLists.txt b/CMakeLists.txt
index f8d62e06..1cf4a902 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -521,8 +521,8 @@ endif()
 if (CAN_USE_FREETYPE AND USE_FREETYPE)
   message (STATUS "Info: FreeType is used by OCCT")
   add_definitions (-DHAVE_FREETYPE)
-  OCCT_ADD_VCPKG_FEATURE ("freetype")
-  list (APPEND OCCT_3RDPARTY_CMAKE_LIST "adm/cmake/freetype")
+  find_package(Freetype MODULE REQUIRED)
+  set(CSF_FREETYPE Freetype::Freetype)
 else()
   if (NOT CAN_USE_FREETYPE)
     OCCT_CHECK_AND_UNSET ("USE_FREETYPE")
@@ -537,9 +537,10 @@ endif()
 # VTK
 if (USE_VTK)
   add_definitions (-DHAVE_VTK)
-  OCCT_ADD_VCPKG_FEATURE ("vtk")
   set (OCCT_VTK_USED_TARGETS "" CACHE INTERNAL "" FORCE)
-  list (APPEND OCCT_3RDPARTY_CMAKE_LIST "adm/cmake/vtk")
+  find_package(VTK REQUIRED)
+  set(CSF_VTK VTK::CommonCore)
+  set(IS_VTK_9XX 1)
 else()
   OCCT_CHECK_AND_UNSET_GROUP ("3RDPARTY_VTK")
   OCCT_UNSET_VCPKG_FEATURE ("vtk")
@@ -554,8 +555,8 @@ endif()
 # FREEIMAGE
 if (CAN_USE_FREEIMAGE AND USE_FREEIMAGE)
   add_definitions (-DHAVE_FREEIMAGE)
-  OCCT_ADD_VCPKG_FEATURE ("freeimage")
-  list (APPEND OCCT_3RDPARTY_CMAKE_LIST "adm/cmake/freeimage")
+  find_package(freeimage CONFIG REQUIRED)
+  set(CSF_FreeImagePlus freeimage::FreeImagePlus)
 elseif (NOT CAN_USE_FREEIMAGE)
   OCCT_CHECK_AND_UNSET ("USE_FREEIMAGE")
   OCCT_UNSET_VCPKG_FEATURE ("freeimage")
@@ -650,8 +651,8 @@ endif()
 # TBB
 if (CAN_USE_TBB AND USE_TBB)
   add_definitions (-DHAVE_TBB)
-  OCCT_ADD_VCPKG_FEATURE ("tbb")
-  list (APPEND OCCT_3RDPARTY_CMAKE_LIST "adm/cmake/tbb")
+  find_package(TBB CONFIG REQUIRED)
+  set(CSF_TBB TBB::tbb TBB::tbbmalloc)
 elseif (NOT CAN_USE_TBB)
   OCCT_CHECK_AND_UNSET ("USE_TBB")
   OCCT_UNSET_VCPKG_FEATURE ("tbb")
@@ -667,8 +668,8 @@ endif()
 OCCT_IS_PRODUCT_REQUIRED (CSF_RapidJSON CAN_USE_RAPIDJSON)
 if (CAN_USE_RAPIDJSON AND USE_RAPIDJSON)
   add_definitions (-DHAVE_RAPIDJSON)
-  OCCT_ADD_VCPKG_FEATURE ("rapidjson")
-  list (APPEND OCCT_3RDPARTY_CMAKE_LIST "adm/cmake/rapidjson")
+  find_package(RapidJSON CONFIG REQUIRED)
+  set(CSF_RapidJSON rapidjson)
 elseif (NOT CAN_USE_RAPIDJSON)
   OCCT_CHECK_AND_UNSET ("USE_RAPIDJSON")
   OCCT_UNSET_VCPKG_FEATURE ("rapidjson")
diff --git a/adm/cmake/occt_csf.cmake b/adm/cmake/occt_csf.cmake
index 49e35d44..124eb4d6 100644
--- a/adm/cmake/occt_csf.cmake
+++ b/adm/cmake/occt_csf.cmake
@@ -163,7 +163,9 @@ else()
     set (CSF_OpenGlesLibs "EGL GLESv2")
     set (CSF_dl          "dl")
     if (USE_FREETYPE)
-      set (CSF_fontconfig "fontconfig")
+      find_package(Fontconfig REQUIRED)
+      set(USE_FONTCONFIG "ON" CACHE INTERNAL "")
+      set (CSF_fontconfig "Fontconfig::Fontconfig")
     endif()
   endif()
 endif()
diff --git a/adm/templates/OpenCASCADEConfig.cmake.in b/adm/templates/OpenCASCADEConfig.cmake.in
index 5079ba63..137206bb 100644
--- a/adm/templates/OpenCASCADEConfig.cmake.in
+++ b/adm/templates/OpenCASCADEConfig.cmake.in
@@ -70,6 +70,26 @@ set (OpenCASCADE_WITH_GLES2     @USE_GLES2@)
 @SET_OpenCASCADE_WITH_D3D@
 @SET_OpenCASCADE_WITH_GLX@
 
+include(CMakeFindDependencyMacro)
+if("@USE_FREEIMAGE@")
+  find_dependency(freeimage CONFIG)
+endif()
+if("@USE_FREETYPE@")
+  find_dependency(Freetype MODULE)
+  if("@USE_FONTCONFIG@")
+    find_dependency(Fontconfig)
+  endif()
+endif()
+if("@USE_RAPIDJSON@")
+  find_dependency(RapidJSON CONFIG)
+endif()
+if("@USE_TBB@")
+  find_dependency(TBB CONFIG)
+endif()
+if("@USE_VTK@")
+  find_dependency(VTK)
+endif()
+
 # Import OpenCASCADE compile definitions, C and C++ flags for each installed configuration.
 file(GLOB CONFIG_FILES "${CMAKE_CURRENT_LIST_DIR}/OpenCASCADECompileDefinitionsAndFlags-*.cmake")
 foreach(f ${CONFIG_FILES})
diff --git a/src/Image/Image_AlienPixMap.cxx b/src/Image/Image_AlienPixMap.cxx
index 7e14e9e6..e6c23d78 100644
--- a/src/Image/Image_AlienPixMap.cxx
+++ b/src/Image/Image_AlienPixMap.cxx
@@ -19,10 +19,6 @@
 
 #ifdef HAVE_FREEIMAGE
   #include <FreeImage.h>
-
-  #ifdef _MSC_VER
-    #pragma comment(lib, "FreeImage.lib")
-  #endif
 #elif defined(HAVE_WINCODEC)
   #include <wincodec.h>
   // prevent warnings on MSVC10
