diff --git a/src/basics/basics/utilities/UbSystem.h b/src/basics/basics/utilities/UbSystem.h
index e5f4bcfd9c1a654fdca4386bc7a5d465af6b302b..8382e3722762d5a5823a2d8e7a257ce7a0cfd1a6 100644
--- a/src/basics/basics/utilities/UbSystem.h
+++ b/src/basics/basics/utilities/UbSystem.h
@@ -398,7 +398,9 @@ namespace UbSystem
       #if defined UBSYSTEM_WINDOWS
          return (unsigned long)GetCurrentThreadId();
       #elif (defined(UBSYSTEM_LINUX) || defined(UBSYSTEM_APPLE)) && !defined(UBSYSTEM_CYGWIN)
-         return (unsigned long)syscall(SYS_gettid);
+         uint64_t tid;
+         pthread_threadid_np(nullptr, &tid);
+         return (unsigned long)tid;
       #elif defined(UBSYSTEM_CYGWIN)
          return (unsigned long)GetCurrentThreadId();
       #elif defined(UBSYSTEM_AIX)