diff --git a/tests/io-fixture.hpp b/tests/io-fixture.hpp
index 20d3e5b..80b88a4 100644
--- a/tests/io-fixture.hpp
+++ b/tests/io-fixture.hpp
@@ -1,7 +1,7 @@
 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil -*- */
 /*
- * Copyright (c) 2013-2022  Regents of the University of California
- *                          The University of Memphis
+ * Copyright (c) 2013-2023,  Regents of the University of California,
+ *                           The University of Memphis.
  *
  * This file is part of PSync.
  *
@@ -22,7 +22,7 @@
 
 #include "tests/clock-fixture.hpp"
 
-#include <boost/asio/io_service.hpp>
+#include <boost/asio/io_context.hpp>
 
 namespace psync::tests {
 
@@ -33,17 +33,13 @@
   afterTick() final
   {
     if (m_io.stopped()) {
-#if BOOST_VERSION >= 106600
       m_io.restart();
-#else
-      m_io.reset();
-#endif
     }
     m_io.poll();
   }
 
 protected:
-  boost::asio::io_service m_io;
+  boost::asio::io_context m_io;
 };
 
 } // namespace psync::tests
diff --git a/wscript b/wscript
index c6595a2..24308d8 100644
--- a/wscript
+++ b/wscript
@@ -51,6 +51,10 @@
                    uselib_store='NDN_CXX', pkg_config_path=pkg_config_path)
 
     conf.check_boost(lib='iostreams', mt=True)
+    if conf.env.BOOST_VERSION_NUMBER < 107100:
+        conf.fatal('The minimum supported version of Boost is 1.71.0.\n'
+                   'Please upgrade your distribution or manually install a newer version of Boost.\n'
+                   'For more information, see https://redmine.named-data.net/projects/nfd/wiki/Boost')
 
     for scheme in COMPRESSION_SCHEMES:
         if getattr(conf.options, f'without_{scheme}'):
