diff --git a/scripts/cmake/packaging/Pack.cmake b/scripts/cmake/packaging/Pack.cmake
index c970e6a8ac180caa9ec1d3b6a5a295059232eaa5..aab366a794abe190ce670944d3d7b3b8024f500a 100644
--- a/scripts/cmake/packaging/Pack.cmake
+++ b/scripts/cmake/packaging/Pack.cmake
@@ -100,3 +100,24 @@ install(FILES ${PROJECT_BINARY_DIR}/CMakeCache.txt DESTINATION ${CMAKE_INSTALL_I
 if(EXISTS ${PROJECT_BINARY_DIR}/cmake-args)
     install(FILES ${PROJECT_BINARY_DIR}/cmake-args DESTINATION ${CMAKE_INSTALL_INFODIR})
 endif()
+
+# Install dependencies via GET_RUNTIME_DEPENDENCIES. Available since CMake 3.16.
+if(${CMAKE_VERSION} VERSION_LESS 3.16)
+    return()
+endif()
+install(CODE [[
+  file(GET_RUNTIME_DEPENDENCIES
+    EXECUTABLES $<TARGET_FILE:ogs>
+    RESOLVED_DEPENDENCIES_VAR _r_deps
+    UNRESOLVED_DEPENDENCIES_VAR _u_deps
+    POST_EXCLUDE_REGEXES "/opt/local/lib/lib.*" # Disable macports zlib
+  )
+  file(INSTALL ${_r_deps}
+    DESTINATION "${CMAKE_INSTALL_PREFIX}/lib"
+    FOLLOW_SYMLINK_CHAIN
+  )
+  list(LENGTH _u_deps _u_length)
+  if("${_u_length}" GREATER 0)
+    message(WARNING "Unresolved dependencies detected!\n${_u_deps}")
+  endif()
+]])