diff --git a/tests/unit/updater_test.cpp b/tests/unit/updater_test.cpp
index 81229f5..8993dd8 100644
--- a/tests/unit/updater_test.cpp
+++ b/tests/unit/updater_test.cpp
@@ -85,7 +85,7 @@
 }
 
 static void expect(const char* expected, const std::string& expr_str, CauseCode cause_code) {
-  Updater updater;
+  Updater updater(std::make_unique<UpdaterRuntime>(nullptr));
   expect(expected, expr_str, cause_code, &updater);
 }
 
@@ -133,6 +133,8 @@
 
 class UpdaterTestBase {
  protected:
+  UpdaterTestBase() : updater_(std::make_unique<UpdaterRuntime>(nullptr)) {}
+
   void SetUp() {
     RegisterBuiltins();
     RegisterInstallFunctions();
diff --git a/updater/blockimg.cpp b/updater/blockimg.cpp
index 55218b0..2d41f61 100644
--- a/updater/blockimg.cpp
+++ b/updater/blockimg.cpp
@@ -49,7 +49,6 @@
 #include <brotli/decode.h>
 #include <fec/io.h>
 #include <openssl/sha.h>
-#include <private/android_filesystem_config.h>
 #include <verity/hash_tree_builder.h>
 #include <ziparchive/zip_archive.h>
 
@@ -63,10 +62,15 @@
 #include "private/commands.h"
 #include "updater/install.h"
 
-// Set this to 0 to interpret 'erase' transfers to mean do a
-// BLKDISCARD ioctl (the normal behavior).  Set to 1 to interpret
-// erase to mean fill the region with zeroes.
+#ifdef __ANDROID__
+#include <private/android_filesystem_config.h>
+// Set this to 0 to interpret 'erase' transfers to mean do a BLKDISCARD ioctl (the normal behavior).
+// Set to 1 to interpret erase to mean fill the region with zeroes.
 #define DEBUG_ERASE  0
+#else
+#define DEBUG_ERASE 1
+#define AID_SYSTEM -1
+#endif  // __ANDROID__
 
 static constexpr size_t BLOCKSIZE = 4096;
 static constexpr mode_t STASH_DIRECTORY_MODE = 0700;
diff --git a/updater/include/updater/updater.h b/updater/include/updater/updater.h
index 7bbecbc..08816bf 100644
--- a/updater/include/updater/updater.h
+++ b/updater/include/updater/updater.h
@@ -30,15 +30,11 @@
 #include "otautil/error_code.h"
 #include "otautil/sysutil.h"
 
-class UpdaterRuntime;
-
 class Updater : public UpdaterInterface {
  public:
   explicit Updater(std::unique_ptr<UpdaterRuntimeInterface> run_time)
       : runtime_(std::move(run_time)) {}
 
-  Updater();
-
   ~Updater() override;
 
   // Memory-maps the OTA package and opens it as a zip file. Also sets up the command pipe and
diff --git a/updater/include/updater/updater_runtime.h b/updater/include/updater/updater_runtime.h
index 6cd0ffb..e97eb49 100644
--- a/updater/include/updater/updater_runtime.h
+++ b/updater/include/updater/updater_runtime.h
@@ -25,7 +25,6 @@
 #include "edify/updater_runtime_interface.h"
 
 struct selabel_handle;
-struct Partition;
 
 class UpdaterRuntime : public UpdaterRuntimeInterface {
  public:
diff --git a/updater/install.cpp b/updater/install.cpp
index 6b15eaa..c82351e 100644
--- a/updater/install.cpp
+++ b/updater/install.cpp
@@ -53,7 +53,6 @@
 #include <openssl/sha.h>
 #include <selinux/label.h>
 #include <selinux/selinux.h>
-#include <tune2fs.h>
 #include <ziparchive/zip_archive.h>
 
 #include "edify/expr.h"
@@ -65,6 +64,10 @@
 #include "otautil/print_sha1.h"
 #include "otautil/sysutil.h"
 
+#ifndef __ANDROID__
+#include <cutils/memory.h>  // for strlcpy
+#endif
+
 static bool UpdateBlockDeviceNameForPartition(UpdaterInterface* updater, Partition* partition) {
   CHECK(updater);
   std::string name = updater->FindBlockDeviceName(partition->name);
diff --git a/updater/updater.cpp b/updater/updater.cpp
index dbfa2f4..426c6dc 100644
--- a/updater/updater.cpp
+++ b/updater/updater.cpp
@@ -24,9 +24,7 @@
 #include <android-base/logging.h>
 #include <android-base/strings.h>
 
-#include "updater/updater_runtime.h"
-
-Updater::Updater() : Updater(std::make_unique<UpdaterRuntime>(nullptr)) {}
+#include "edify/updater_runtime_interface.h"
 
 Updater::~Updater() {
   if (package_handle_) {
