await writePackagesFiles()
diff --git a/lib/src/entrypoint.dart b/lib/src/entrypoint.dart
index 4849d10..ebe75f5 100644
--- a/lib/src/entrypoint.dart
+++ b/lib/src/entrypoint.dart
@@ -179,7 +179,7 @@
   }
 
   /// Writes .packages and .dart_tool/package_config.json
-  void writePackagesFiles() async {
+  Future<void> writePackagesFiles() async {
     writeTextFile(packagesFile, lockFile.packagesFile(cache, root.name));
     ensureDir(p.dirname(packageConfigFile));
     writeTextFile(
@@ -251,7 +251,7 @@
     /// have to reload and reparse all the pubspecs.
     _packageGraph = PackageGraph.fromSolveResult(this, result);
 
-    writePackagesFiles();
+    await writePackagesFiles();
 
     try {
       if (precompile) {