Index: src/helper/HelperApp.cpp
--- src/helper/HelperApp.cpp.orig
+++ src/helper/HelperApp.cpp
@@ -41,7 +41,9 @@
 #if defined(Q_OS_LINUX)
 #include <utmp.h>
 #endif
+#if !defined(Q_OS_OPENBSD)
 #include <utmpx.h>
+#endif
 #include <QByteArray>
 #include <signal.h>
 
@@ -301,6 +303,7 @@ namespace SDDM {
     }
 
     void HelperApp::utmpLogin(const QString &vt, const QString &displayName, const QString &user, qint64 pid, bool authSuccessful) {
+#if !defined(Q_OS_OPENBSD) // TODO impl.
         struct utmpx entry { };
         struct timeval tv;
 
@@ -335,6 +338,7 @@ namespace SDDM {
         if (!pututxline (&entry))
             qWarning() << "Failed to write utmpx: " << strerror(errno);
         endutxent();
+#endif
 
 #if defined(Q_OS_LINUX)
         updwtmpx(authSuccessful ? "/var/log/wtmp" : "/var/log/btmp", &entry);
@@ -342,6 +346,7 @@ namespace SDDM {
     }
 
     void HelperApp::utmpLogout(const QString &vt, const QString &displayName, qint64 pid) {
+#if !defined(Q_OS_OPENBSD) // TODO impl.
         struct utmpx entry { };
         struct timeval tv;
 
@@ -371,6 +376,7 @@ namespace SDDM {
         if (!pututxline (&entry))
             qWarning() << "Failed to write utmpx: " << strerror(errno);
         endutxent();
+#endif
 
 #if defined(Q_OS_LINUX)
         // append to wtmp
