diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,10 @@
+0.2.2
+---
+
+- Use system-cxx-std-lib for specifying C++ linkage
+
+
+
 0.2.1
 ---
 
diff --git a/crc32c.cabal b/crc32c.cabal
--- a/crc32c.cabal
+++ b/crc32c.cabal
@@ -1,7 +1,7 @@
 cabal-version: 2.2
 
 name:           crc32c
-version:        0.2.1
+version:        0.2.2
 description:    Haskell bindings for crc32c
 synopsis:       crc32c
 category:       FFI, Raw
@@ -44,9 +44,12 @@
       include/crc32c_arm64.cc
       include/crc32c_portable.cc
       include/crc32c_sse42.cc
-  extra-libraries:
-      stdc++
   cxx-options: -std=c++11
+  if impl(ghc >= 9.4)
+    build-depends: system-cxx-std-lib
+  else
+    extra-libraries:
+      stdc++
   if (arch(x86_64) && !os(windows))
     cxx-options: -DHAVE_SSE42=1 -msse4.2
   if arch(arm)
