diff --git a/CMakeLists.txt b/CMakeLists.txt
index f255e9c5f0ddcaa101aeda43244ff32dae4fe764..dc6939206d80e4ff17957560fa67ab4fb92c5e3d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1072,17 +1072,17 @@ if ( WALBERLA_BUILD_WITH_CUDA )
     include(CheckLanguage)
     check_language(CUDA)
     if( CMAKE_CUDA_COMPILER )
-        try_compile( WALBERLA_CUDA_HOSTCXX_WORKS "${CMAKE_CURRENT_BINARY_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/TestCUDACompatibility.cu"
-             COMPILE_DEFINITIONS -Werror )
-        if(NOT WALBERLA_CUDA_HOSTCXX_WORKS)
-           message(FATAL_ERROR "This combination of CUDA compiler and host compiler does not work!")
-        endif()
         if(${CMAKE_VERSION} VERSION_GREATER "3.18.0" AND NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
             set(CMAKE_CUDA_ARCHITECTURES OFF)
             message(WARNING "CMAKE_CUDA_ARCHITECTURES was not set. It is automatically set to: ${CMAKE_CUDA_ARCHITECTURES}")
         endif()
 
         enable_language(CUDA)
+        try_compile( WALBERLA_CUDA_HOSTCXX_WORKS "${CMAKE_CURRENT_BINARY_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/TestCUDACompatibility.cu"
+              COMPILE_DEFINITIONS -Werror )
+        if(NOT WALBERLA_CUDA_HOSTCXX_WORKS)
+           message(FATAL_ERROR "This combination of CUDA compiler and host compiler does not work!")
+        endif()
 
         #include directories and cudart lib is needed for cpp files that use cuda headers/libs
         include_directories(${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES})