diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@
 
 Things that `atspkg` will not do for you:
 
-  * Dependency resolution (under construction)
+  * Dependency resolution (this is planned)
   * Give you the full flexibility of the C/ATS ecosystem
   * Integrate with other ecosystems
   * Provide a centralized package repository
diff --git a/ats-pkg.cabal b/ats-pkg.cabal
--- a/ats-pkg.cabal
+++ b/ats-pkg.cabal
@@ -1,5 +1,5 @@
 name:                ats-pkg
-version:             2.4.2.0
+version:             2.4.2.7
 synopsis:            A build tool for ATS
 description:         A collection of scripts to simplify building ATS projects.
 homepage:            https://github.com/vmchale/atspkg#readme
diff --git a/src/Language/ATS/Package.hs b/src/Language/ATS/Package.hs
--- a/src/Language/ATS/Package.hs
+++ b/src/Language/ATS/Package.hs
@@ -21,6 +21,8 @@
                             , TargetPair (..)
                             , ForeignCabal (..)
                             , ATSPackageSet (..)
+                            , LibDep
+                            , PackageError (..)
                             -- * Lenses
                             , dirLens
                             ) where
@@ -29,6 +31,7 @@
 import           Language.ATS.Package.Compiler
 import           Language.ATS.Package.Dependency
 import           Language.ATS.Package.Dhall
+import           Language.ATS.Package.Error
 import           Language.ATS.Package.PackageSet
 import           Language.ATS.Package.Type
 import           Language.ATS.Package.Upgrade
diff --git a/src/Language/ATS/Package/Build.hs b/src/Language/ATS/Package/Build.hs
--- a/src/Language/ATS/Package/Build.hs
+++ b/src/Language/ATS/Package/Build.hs
@@ -219,10 +219,10 @@
         mapM_ g (bs ++ ts)
 
     where g (Bin s t ls hs' atg gc' cSrc extra) =
-            atsBin (BinaryTarget (unpack <$> cf) atsToolConfig gc' (unpack <$> ls) [unpack s] hs' (unpackBoth . asTuple <$> atg) (unpack t) (unpack <$> cSrc) (deps extra) Executable)
+            atsBin (BinaryTarget (unpack <$> cf) atsToolConfig gc' (unpack <$> ls) [unpack s] hs' (unpackBoth . asTuple <$> atg) mempty (unpack t) (unpack <$> cSrc) (deps extra) Executable)
 
-          h (Lib _ s t ls _ hs' atg cSrc extra _) =
-            atsBin (BinaryTarget (unpack <$> cf) atsToolConfig False (unpack <$> ls) (unpack <$> s) hs' (unpackBoth . asTuple <$> atg) (unpack t) (unpack <$> cSrc) (deps extra) StaticLibrary)
+          h (Lib _ s t ls _ hs' lnk atg cSrc extra _) =
+            atsBin (BinaryTarget (unpack <$> cf) atsToolConfig False (unpack <$> ls) (unpack <$> s) hs' (unpackBoth . asTuple <$> atg) (both unpack <$> lnk) (unpack t) (unpack <$> cSrc) (deps extra) StaticLibrary)
 
           atsToolConfig = ATSToolConfig v v' False (ccFromString cc')
 
diff --git a/src/Language/ATS/Package/Error.hs b/src/Language/ATS/Package/Error.hs
--- a/src/Language/ATS/Package/Error.hs
+++ b/src/Language/ATS/Package/Error.hs
@@ -4,7 +4,7 @@
                                     unrecognized
                                   , resolutionFailed
                                   -- * Types
-                                  , PackageError
+                                  , PackageError (..)
                                   ) where
 
 import           Data.Dependency
diff --git a/src/Language/ATS/Package/Type.hs b/src/Language/ATS/Package/Type.hs
--- a/src/Language/ATS/Package/Type.hs
+++ b/src/Language/ATS/Package/Type.hs
@@ -74,6 +74,7 @@
                , libs      :: [Text] -- ^ Libraries to link against (e.g. @[ "pthread" ]@)
                , includes  :: [Text] -- ^ Include files to be installed with the library
                , hsDeps    :: [ForeignCabal] -- ^ Haskell @.cabal@ files associated with object files
+               , links     :: [(Text, Text)] -- ^ Generate link files.
                , hs2ats    :: [TargetPair] -- ^ Sources and targets for @hs2ats@
                , cSources  :: [Text] -- ^ C source files the build depends on
                , extras    :: [Text] -- ^ Other source files the build depends on
diff --git a/src/Quaalude.hs b/src/Quaalude.hs
--- a/src/Quaalude.hs
+++ b/src/Quaalude.hs
@@ -15,6 +15,7 @@
                 , isPrefixOf
                 , isSuffixOf
                 , on
+                , both
                 , (<>)
                 , (***)
                 , (&&&)
@@ -82,10 +83,18 @@
                 , putDoc
                 , Pretty (pretty)
                 , module X
+                -- Lens exports
+                , over
+                , _1
+                , _2
+                , makeLensesFor
+                , each
+                , (&)
+                , (%~)
                 ) where
 
 import           Control.Arrow                hiding ((<+>))
-import           Control.Lens                 as X
+import           Control.Lens                 hiding (both)
 import           Control.Monad.IO.Class
 import           Data.ByteString.Lazy         (ByteString)
 import           Network.HTTP.Client
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -8,7 +8,7 @@
 extra-deps:
   - shake-ext-2.5.0.0
   - composition-prelude-1.2.0.1
-  - language-ats-0.3.0.1
+  - language-ats-0.3.0.4
   - cli-setup-0.2.0.1
   - ats-setup-0.3.0.2
   - hspec-dirstream-0.3.0.0
