diff --git a/CMakeLists.txt b/CMakeLists.txt
index 227e2a74..6ece331a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 3.5.0)
+cmake_minimum_required(VERSION 3.17.0)
 
 project(implicit)
 
diff --git a/setup.py b/setup.py
index 7a6bfe55..0f4b3423 100644
--- a/setup.py
+++ b/setup.py
@@ -15,10 +15,10 @@
 # Add CMake as a build requirement if cmake is not installed or is too low a version
 setup_requires = []
 try:
-    if LegacyVersion(get_cmake_version()) < LegacyVersion("3.5"):
-        setup_requires.append("cmake")
+    if LegacyVersion(get_cmake_version()) < LegacyVersion("3.17"):
+        setup_requires.append("cmake>=3.17")
 except SKBuildError:
-    setup_requires.append("cmake")
+    setup_requires.append("cmake>=3.17")
 
 
 def read(file_name):