mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2026-09-24 13:37:01 +02:00
vulkan: hide internal symbols to prevent duplicate-dlopen state destruction (#29139)
Since #28732 our internal symbols are exported. A duplicate copy dlopened and dlclosed by ggml_backend_load_all() then interposes them, so its destructors destroy the live vk_instance and later device queries hit the GGML_ASSERT on vk_instance.device_indices. Hidden visibility exports only GGML_BACKEND_API, as before #28732. Fixes #29138 Assisted-by: henk:claude-fable-5
This commit is contained in:
@@ -69,6 +69,11 @@ if (Vulkan_FOUND)
|
||||
ggml-vulkan-debug.cpp
|
||||
)
|
||||
|
||||
# hide symbols, so dlclosed duplicate copies cannot interpose them
|
||||
set_target_properties(ggml-vulkan PROPERTIES
|
||||
CXX_VISIBILITY_PRESET hidden
|
||||
VISIBILITY_INLINES_HIDDEN ON)
|
||||
|
||||
set(VULKAN_SHADER_GEN_CMAKE_ARGS "")
|
||||
|
||||
# Test all shader extensions
|
||||
|
||||
Reference in New Issue
Block a user