diff --git a/src/ggml.c b/src/ggml.c index da5b817e1..ae8147dd7 100644 --- a/src/ggml.c +++ b/src/ggml.c @@ -128,6 +128,10 @@ static void ggml_print_backtrace_symbols(void) { #endif static void ggml_print_backtrace(void) { + const char * GGML_NO_BACKTRACE = getenv("GGML_NO_BACKTRACE"); + if (GGML_NO_BACKTRACE) { + return; + } char attach[32]; snprintf(attach, sizeof(attach), "attach %d", getpid()); int pid = fork(); diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 5f8ee9c01..2259c3df4 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -50,6 +50,10 @@ else() set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mf16c") elseif (UNAME_S MATCHES "Linux") message(STATUS "Linux detected") + # must have to build on ubuntu22 with gcc11: + find_package(Threads) + set(GGML_EXTRA_LIBS ${GGML_EXTRA_LIBS} Threads::Threads) + execute_process(COMMAND grep "avx " /proc/cpuinfo OUTPUT_VARIABLE AVX1_M) if (AVX1_M MATCHES "avx") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx") @@ -276,7 +280,7 @@ set_property(TEST ${TEST_TARGET} PROPERTY ENVIRONMENT "LLVM_PROFILE_FILE=${TEST_ set(TEST_TARGET test-arange) add_executable(${TEST_TARGET} ${TEST_TARGET}.cpp) -target_link_libraries(${TEST_TARGET} PRIVATE ggml) +target_link_libraries(${TEST_TARGET} PRIVATE ggml Threads::Threads) if (MSVC) target_link_options(${TEST_TARGET} PRIVATE "/STACK: 8388608") # 8MB endif() @@ -392,7 +396,7 @@ set_property(TEST ${TEST_TARGET} PROPERTY ENVIRONMENT "LLVM_PROFILE_FILE=${TEST_ set(TEST_TARGET test-backend-ops) add_executable(${TEST_TARGET} ${TEST_TARGET}.cpp) -target_link_libraries(${TEST_TARGET} PRIVATE ggml) +target_link_libraries(${TEST_TARGET} PRIVATE ggml Threads::Threads) add_test(NAME ${TEST_TARGET} COMMAND $) set_property(TEST ${TEST_TARGET} PROPERTY ENVIRONMENT "LLVM_PROFILE_FILE=${TEST_TARGET}.profraw")