From 216b888cf09bef42b3afa32c62538bbed6dabb87 Mon Sep 17 00:00:00 2001 From: Ismael Luceno Date: Sat, 1 Apr 2023 00:06:05 +0200 Subject: [PATCH 4/5] Avoid backtrace in non-glibc Linux systems This is not part of the libc and requires linking against an external implementation. Upstream-Status: Inappropriate [CLA involved] Signed-off-by: Ismael Luceno --- src/Standard/Standard_StackTrace.cxx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Standard/Standard_StackTrace.cxx b/src/Standard/Standard_StackTrace.cxx index 271c7e2b3b4e..23bb262b1491 100644 --- a/src/Standard/Standard_StackTrace.cxx +++ b/src/Standard/Standard_StackTrace.cxx @@ -29,6 +29,8 @@ //#include #elif defined(__QNX__) //#include // requires linking to libbacktrace +#elif defined(__linux__) && !(defined(__GLIBC__) || defined(__UCLIBC__)) + // requires linking against libexecinfo #elif !defined(_WIN32) && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) #include #elif defined(_WIN32) && !defined(OCCT_UWP) @@ -203,6 +205,9 @@ Standard_Boolean Standard::StackTrace (char* theBuffer, #elif defined(__ANDROID__) Message::SendTrace ("Standard::StackTrace() is not implemented for this platform"); return false; +#elif defined(__linux__) && !(defined(__GLIBC__) || defined(__UCLIBC__)) + Message::SendTrace ("Standard::StackTrace() is not implemented for this platform"); + return false; #elif defined(__QNX__) // bt_get_backtrace() Message::SendTrace ("Standard::StackTrace() is not implemented for this platform"); -- 2.40.0 .