diff --git a/sal/osl/unx/backtrace.h b/sal/osl/unx/backtrace.h
index 5fafc1c..408c12c 100644
--- a/sal/osl/unx/backtrace.h
+++ b/sal/osl/unx/backtrace.h
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_SAL_OSL_UNX_BACKTRACE_H
 #define INCLUDED_SAL_OSL_UNX_BACKTRACE_H
 
-#if defined (LINUX)
+#if defined (LINUX) && defined (__GLIBC__)
 
 #include <execinfo.h>
 
diff --git a/sal/osl/unx/signal.cxx b/sal/osl/unx/signal.cxx
index f4c9a9c..da6d9cf 100644
--- a/sal/osl/unx/signal.cxx
+++ b/sal/osl/unx/signal.cxx
@@ -35,7 +35,7 @@
 
 #endif /* MACOSX */
 
-#ifdef LINUX
+#if defined(LINUX) && defined(__GLIBC__)
 #include <execinfo.h>
 #include <link.h>
 #define INCLUDE_BACKTRACE
diff --git a/sal/osl/unx/backtrace.c b/sal/osl/unx/backtrace.c
index 1d9a58b..fd648e4 100644
--- a/sal/osl/unx/backtrace.c
+++ b/sal/osl/unx/backtrace.c
@@ -282,7 +282,7 @@ void backtrace_symbols_fd( void **buffer, int size, int fd )
     }
 }
 
-#elif !defined LINUX
+#elif !defined(__GLIBC__)
 
 int backtrace( void **buffer, int max_frames )
 {
