diff --git a/test/Makefile.am b/test/Makefile.am
index 538d826..1f6470d 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -3,6 +3,6 @@
 
 phosphor_inventory_test_SOURCES = \
 	test.cpp
-phosphor_inventory_test_LDFLAGS = $(SYSTEMD_LIBS)
+phosphor_inventory_test_LDFLAGS = $(SYSTEMD_LIBS) $(PTHREAD_CFLAGS)
 phosphor_inventory_test_CFLAGS = $(SYSTEMD_CFLAGS)
 phosphor_inventory_test_LDADD = ${top_builddir}/libmanager.la
diff --git a/test/test.cpp b/test/test.cpp
index 550e83f..a35a03b 100644
--- a/test/test.cpp
+++ b/test/test.cpp
@@ -18,20 +18,12 @@
 #include <cassert>
 #include <iostream>
 #include <algorithm>
+#include <thread>
 
 constexpr auto SERVICE = "phosphor.inventory.test";
 constexpr auto INTERFACE = IFACE;
 constexpr auto ROOT = "/testing/inventory";
 
-auto server_thread(void* data)
-{
-    auto mgr = static_cast<phosphor::inventory::manager::Manager*>(data);
-
-    mgr->run();
-
-    return static_cast<void*>(nullptr);
-}
-
 /** @class SignalQueue
  *  @brief Store DBus signals in a queue.
  */
@@ -323,15 +315,15 @@
                    sdbusplus::bus::new_default(),
                    SERVICE, ROOT, INTERFACE);
 
-    pthread_t t;
+    auto f = [](auto mgr)
     {
-        pthread_create(&t, nullptr, server_thread, &mgr);
-    }
-
+        mgr->run();
+    };
+    auto t = std::thread(f, &mgr);
     runTests(mgr);
 
     // Wait for server thread to exit.
-    pthread_join(t, nullptr);
+    t.join();
 
     return 0;
 }
