diff --git a/CMake/3rd/vtk.cmake b/CMake/3rd/vtk.cmake
index 6f51064289443051225b309c6d493be546b2c7a8..7bba91a5a25da622ef752d670845754a6349815c 100644
--- a/CMake/3rd/vtk.cmake
+++ b/CMake/3rd/vtk.cmake
@@ -5,7 +5,6 @@
 find_package(VTK REQUIRED)
 vf_get_library_name(library_name)
 
-include(${VTK_USE_FILE})
 target_include_directories(${library_name} PRIVATE ${VTK_INCLUDE_DIRS})
 
 target_link_libraries(${library_name} PRIVATE ${VTK_LIBRARIES})
diff --git a/src/gpu/GksGpu/CMakeLists.txt b/src/gpu/GksGpu/CMakeLists.txt
index 6da2a9ec85f660c1900980cdd7984c17c5393745..5dbc533cc5f45c006c29a12242350f0433518bbf 100644
--- a/src/gpu/GksGpu/CMakeLists.txt
+++ b/src/gpu/GksGpu/CMakeLists.txt
@@ -3,4 +3,8 @@ project(GksGpu LANGUAGES CUDA CXX)
 vf_add_library(PRIVATE_LINK basics lbmCuda GksMeshAdapter OpenMP::OpenMP_CXX MPI::MPI_CXX)
 
 target_include_directories(GksGpu PRIVATE "${VF_THIRD_DIR}/cuda_samples/")
-target_compile_options(GksGpu PRIVATE "-fPIC")
\ No newline at end of file
+
+if (NOT MSVC)
+    target_compile_options(GksGpu PRIVATE "$<$<COMPILE_LANGUAGE:CXX>:-fPIC>")
+endif()
+
diff --git a/src/gpu/GksVtkAdapter/CMakeLists.txt b/src/gpu/GksVtkAdapter/CMakeLists.txt
index 644dc6defa101644338fc35211efa7eccabca3b0..fdc7a1eb56f548afc58e83ef7b0f7ad02ad12ea9 100644
--- a/src/gpu/GksVtkAdapter/CMakeLists.txt
+++ b/src/gpu/GksVtkAdapter/CMakeLists.txt
@@ -1,5 +1,5 @@
 
 
-vf_add_library(BUILDTYPE shared PRIVATE_LINK basics GksGpu)
+vf_add_library(BUILDTYPE static PRIVATE_LINK basics GksGpu)
 
 include (${VF_CMAKE_DIR}/3rd/vtk.cmake)
\ No newline at end of file