diff --git a/include/ipmid/message/pack.hpp b/include/ipmid/message/pack.hpp
index 407c35f..9225d60 100644
--- a/include/ipmid/message/pack.hpp
+++ b/include/ipmid/message/pack.hpp
@@ -15,6 +15,7 @@
  */
 #pragma once
 
+#include <include/ipmid/message.hpp>
 #include <ipmid/message/types.hpp>
 #include <phosphor-logging/lg2.hpp>
 #include <phosphor-logging/log.hpp>
diff --git a/include/ipmid/message/unpack.hpp b/include/ipmid/message/unpack.hpp
index 8340ce3..357f0b4 100644
--- a/include/ipmid/message/unpack.hpp
+++ b/include/ipmid/message/unpack.hpp
@@ -15,6 +15,7 @@
  */
 #pragma once
 
+#include <include/ipmid/message.hpp>
 #include <ipmid/message/types.hpp>
 
 #include <array>
diff --git a/include/ipmid/sessiondef.hpp b/include/ipmid/sessiondef.hpp
index ac63f8f..0311c91 100644
--- a/include/ipmid/sessiondef.hpp
+++ b/include/ipmid/sessiondef.hpp
@@ -16,6 +16,9 @@
  */
 #pragma once
 
+#include <stddef.h>
+#include <stdint.h>
+
 namespace session
 {
 
diff --git a/storageaddsel.hpp b/storageaddsel.hpp
index e3065b0..9183472 100644
--- a/storageaddsel.hpp
+++ b/storageaddsel.hpp
@@ -2,6 +2,8 @@
 
 #include <stdint.h>
 
+#include <string>
+
 /** @brief Read eSEL data into a string
  *
  *  @param[in] filename - filename of file containing eSEL
diff --git a/test/oemrouter_unittest.cpp b/test/oemrouter_unittest.cpp
index 7016c6e..17857a7 100644
--- a/test/oemrouter_unittest.cpp
+++ b/test/oemrouter_unittest.cpp
@@ -1,5 +1,6 @@
 #include <ipmid/api.h>
 
+#include <include/ipmid/api-types.hpp>
 #include <ipmid/oemrouter.hpp>
 
 #include <cstring>
@@ -19,7 +20,7 @@
                             ipmi_cmd_privilege_t priv)
 {
     EXPECT_EQ(NETFUN_OEM_GROUP, netfn);
-    EXPECT_EQ(cmdWildcard, cmd);
+    EXPECT_EQ(ipmi::cmdWildcard, cmd);
     EXPECT_EQ(reinterpret_cast<void*>(singletonUnderTest), context);
     EXPECT_EQ(PRIVILEGE_OEM, priv);
     lastNetFunction = netfn;
@@ -73,7 +74,7 @@
     };
     RegisterWithRouter(0x123456, 0x78, f);
 
-    *nextCmd = cmdWildcard;
+    *nextCmd = ipmi::cmdWildcard;
     Handler g = [nextCmd](ipmi_cmd_t cmd, const uint8_t* reqBuf,
                           uint8_t* replyBuf, size_t* dataLen) {
         // Check inputs
@@ -90,7 +91,7 @@
         *dataLen = 0;
         return 0;
     };
-    RegisterWithRouter(0x234567, cmdWildcard, g);
+    RegisterWithRouter(0x234567, ipmi::cmdWildcard, g);
 }
 } // namespace
 
