diff --git a/clashilator.cabal b/clashilator.cabal
--- a/clashilator.cabal
+++ b/clashilator.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           clashilator
-version:        0.1.2
+version:        0.1.2.1
 synopsis:       Automated Clash to Verilator bridge
 description:    Code generator and @Setup.hs@ hooks to generate a Verilator simulation and access it from Clash
 category:       Hardware, Development
@@ -39,7 +39,7 @@
       src
   ghc-options: -Wunused-imports
   build-depends:
-      Cabal >=3.2.1 && <3.3
+      Cabal >=3.2.1 && <3.5
     , aeson >=1.5 && <1.6 || >=2.0 && <2.1
     , base >=4.14 && <5
     , clash-ghc >=1.4.2 && <1.5 || >=1.6.1 && <1.7
@@ -66,7 +66,7 @@
       src
   ghc-options: -Wunused-imports
   build-depends:
-      Cabal >=3.2.1 && <3.3
+      Cabal >=3.2.1 && <3.5
     , aeson >=1.5 && <1.6 || >=2.0 && <2.1
     , base >=4.14 && <5
     , clash-ghc >=1.4.2 && <1.5 || >=1.6.1 && <1.7
diff --git a/src/Clash/Clashilator/Setup.hs b/src/Clash/Clashilator/Setup.hs
--- a/src/Clash/Clashilator/Setup.hs
+++ b/src/Clash/Clashilator/Setup.hs
@@ -29,10 +29,16 @@
 import System.FilePath
 import GHC (Ghc)
 #if MIN_VERSION_ghc(8,10,0)
+#if MIN_VERSION_ghc(9,0,0)
 import GHC (getSession, setSession)
+import GHC.Driver.Types (HscEnv(..))
+import GHC.Runtime.Linker
+#else
+import GHC (getSession, setSession)
 import HscTypes (HscEnv (..))
 import Linker
 #endif
+#endif
 
 lookupX :: String -> BuildInfo -> Maybe String
 lookupX key buildInfo = lookup ("x-clashilator-" <> key) (view customFieldsBI buildInfo)
@@ -119,7 +125,7 @@
       & options %~ fixupOptions (compileFlags++)
       & ldOptions %~ (ldFlags++)
       & hsSourceDirs %~ (incDir:)
-      & otherModules %~ (fromComponents ["Clash", "Clashilator", "FFI"]:)
+      & otherModules %~ (fromString "Clash.Clashilator.FFI":)
   where
     verbosity = fromFlagOrDefault normal (buildVerbosity flags)
 
