diff --git a/cmake/caches/cn/fast/cpu.cmake b/cmake/caches/cn/fast/cpu.cmake
index 40d786b450984bca26b7757a402c676c10dbfe7e..00d7706c2b43eee935274f63f3c3965735302878 100644
--- a/cmake/caches/cn/fast/cpu.cmake
+++ b/cmake/caches/cn/fast/cpu.cmake
@@ -5,3 +5,5 @@ set(THIRD_PARTY_MIRROR aliyun CACHE STRING "")
 set(PIP_INDEX_MIRROR "https://pypi.tuna.tsinghua.edu.cn/simple" CACHE STRING "")
 set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "")
 set(CMAKE_GENERATOR Ninja CACHE STRING "")
+set(CMAKE_C_COMPILER_LAUNCHER sccache CACHE STRING "")
+set(CMAKE_CXX_COMPILER_LAUNCHER sccache CACHE STRING "")
diff --git a/cmake/third_party/absl.cmake b/cmake/third_party/absl.cmake
index e11b79751d2bcfcd0639a32a28a972f0cda5af12..6bd3a19664f0f774e2f7ef47460f5fe91e8ef157 100644
--- a/cmake/third_party/absl.cmake
+++ b/cmake/third_party/absl.cmake
@@ -41,6 +41,8 @@ if(THIRD_PARTY)
         -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG}
         -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE}
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_INSTALL_PREFIX:PATH=${ABSL_INSTALL}
         -DCMAKE_INSTALL_LIBDIR:PATH=${ABSL_INSTALL}/${CMAKE_INSTALL_LIBDIR}
         -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
diff --git a/cmake/third_party/eigen.cmake b/cmake/third_party/eigen.cmake
index 792d60b5569a841445c013498066ed24cbc8c6ed..3dc32e933e4e8eaaf6452100dd6ea06a5eec664d 100644
--- a/cmake/third_party/eigen.cmake
+++ b/cmake/third_party/eigen.cmake
@@ -31,6 +31,8 @@ ExternalProject_Add(eigen
     UPDATE_COMMAND ""
     INSTALL_DIR "${EIGEN_INSTALL_DIR}"
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_VERBOSE_MAKEFILE:BOOL=OFF
         -DCMAKE_INSTALL_PREFIX:STRING=${EIGEN_INSTALL_DIR}
diff --git a/cmake/third_party/gflags.cmake b/cmake/third_party/gflags.cmake
index c2f94a6791735051f9f97efee1017d2f5a5aa605..f32cca673017eaf46bc974cb6d636433f1916e75 100644
--- a/cmake/third_party/gflags.cmake
+++ b/cmake/third_party/gflags.cmake
@@ -38,6 +38,8 @@ ExternalProject_Add(gflags
     BUILD_IN_SOURCE 1
     BUILD_BYPRODUCTS ${GFLAGS_STATIC_LIBRARIES}
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG}
         -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE}
diff --git a/cmake/third_party/glog.cmake b/cmake/third_party/glog.cmake
index c487bdadc73a2846326e2d853edb5a4af0b91894..6361f03d867d14782b2bc31694f31201b9c884ec 100644
--- a/cmake/third_party/glog.cmake
+++ b/cmake/third_party/glog.cmake
@@ -47,6 +47,8 @@ ExternalProject_Add(glog
     BUILD_IN_SOURCE 1
     BUILD_BYPRODUCTS ${GLOG_STATIC_LIBRARIES}
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_POLICY_DEFAULT_CMP0074:STRING=NEW
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG}
diff --git a/cmake/third_party/googletest.cmake b/cmake/third_party/googletest.cmake
index 71021de066b7d9f7366da63515b74413ea756fcc..5b8c2bcc5c6d2941aacf12e10b6f606974ccfa85 100644
--- a/cmake/third_party/googletest.cmake
+++ b/cmake/third_party/googletest.cmake
@@ -50,6 +50,8 @@ ExternalProject_Add(googletest
     INSTALL_COMMAND ""
     BUILD_BYPRODUCTS ${GOOGLETEST_STATIC_LIBRARIES} ${GOOGLEMOCK_STATIC_LIBRARIES}
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG}
         -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE}
diff --git a/cmake/third_party/grpc.cmake b/cmake/third_party/grpc.cmake
index 878da486a0b02e733d58acf43dd7ddde2295e5e0..11942d6ec0f31de911baceaacfb8aa2644b0a1ec 100644
--- a/cmake/third_party/grpc.cmake
+++ b/cmake/third_party/grpc.cmake
@@ -45,6 +45,8 @@ ExternalProject_Add(grpc
     BUILD_BYPRODUCTS ${GRPC_STATIC_LIBRARIES}
     BUILD_COMMAND ${CMAKE_COMMAND} --build . -j ${PROC_NUM} --target grpc && ${CMAKE_COMMAND} --build . -j ${PROC_NUM} --target grpc_unsecure && ${CMAKE_COMMAND} --build . -j ${PROC_NUM} --target grpc++_unsecure
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_POLICY_DEFAULT_CMP0074:STRING=NEW
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG}
diff --git a/cmake/third_party/libjpeg-turbo.cmake b/cmake/third_party/libjpeg-turbo.cmake
index f5abcae6f5125d2753c9d53be3dd39d10fc3339b..47a5f1ca16cc7f57016614a4f4c8fece7af200d6 100644
--- a/cmake/third_party/libjpeg-turbo.cmake
+++ b/cmake/third_party/libjpeg-turbo.cmake
@@ -61,6 +61,8 @@ ExternalProject_Add(libjpeg-turbo
     BUILD_IN_SOURCE 1
     BUILD_BYPRODUCTS ${LIBJPEG_STATIC_LIBRARIES}
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG}
 	-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
diff --git a/cmake/third_party/opencv.cmake b/cmake/third_party/opencv.cmake
index cd850e62d36df7b0347ed91d512ba5ffd105f298..4c52f8f8f05196537932ef884680d2cae73e21a5 100644
--- a/cmake/third_party/opencv.cmake
+++ b/cmake/third_party/opencv.cmake
@@ -45,6 +45,8 @@ ExternalProject_Add(opencv
     BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/opencv/src/opencv/build
     BUILD_BYPRODUCTS ${OPENCV_STATIC_LIBRARIES}
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_POLICY_DEFAULT_CMP0074:STRING=NEW
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_INSTALL_PREFIX:STRING=${OPENCV_INSTALL_DIR}
diff --git a/cmake/third_party/protobuf.cmake b/cmake/third_party/protobuf.cmake
index df76cfdcd436cf95109ea3636daa7b5facff1184..2278a8422a39883b6a0a36e533657678c1bd401b 100644
--- a/cmake/third_party/protobuf.cmake
+++ b/cmake/third_party/protobuf.cmake
@@ -54,6 +54,8 @@ ExternalProject_Add(protobuf
     SOURCE_SUBDIR cmake
     BUILD_BYPRODUCTS ${PROTOBUF_STATIC_LIBRARIES}
     CMAKE_CACHE_ARGS
+        -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+        -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
         -DCMAKE_POLICY_DEFAULT_CMP0074:STRING=NEW
         -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
         -DCMAKE_VERBOSE_MAKEFILE:BOOL=OFF
diff --git a/cmake/third_party/re2.cmake b/cmake/third_party/re2.cmake
index ee0e41e02fda738dc7dac6aa8a246fde51b83857..773045863fd3761b3ef00ea501e8f92f77e66295 100644
--- a/cmake/third_party/re2.cmake
+++ b/cmake/third_party/re2.cmake
@@ -24,6 +24,8 @@ if (THIRD_PARTY)
           -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG}
           -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE}
         CMAKE_CACHE_ARGS
+          -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+          -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
           -DCMAKE_INSTALL_PREFIX:PATH=${RE2_INSTALL_DIR}
           -DCMAKE_INSTALL_LIBDIR:PATH=${RE2_LIBRARY_DIR}
           -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
diff --git a/cmake/third_party/zlib.cmake b/cmake/third_party/zlib.cmake
index 0542dc31a48f383415067d6901ac5f9f7413014f..596c36a4ca90d86320e49bc3c7f50449587ba54d 100644
--- a/cmake/third_party/zlib.cmake
+++ b/cmake/third_party/zlib.cmake
@@ -41,6 +41,8 @@ ExternalProject_Add(zlib
     BUILD_IN_SOURCE 1
     BUILD_BYPRODUCTS ${ZLIB_STATIC_LIBRARIES}
     CMAKE_CACHE_ARGS
+      -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
+      -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
       -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
       -DBUILD_SHARED_LIBS:BOOL=${BUILD_SHARED_LIBS}
       -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}