Files
omarchy-pkgs/pkgbuilds/python-mediapipe/0008-drop-semantic-retriever-from-libmediapipe.patch
T
Ryan Hughes 7dde80c9f7 python-mediapipe: leave the semantic retriever out of libmediapipe.so
MediaPipe 1.1.0 links its SQLite memory and vector stores from prebuilt
archives built with Google's internal toolchain. They have no archive symbol
table, and once indexed they still need Google's libc++ (std::__u) and
internal symbols (__alloc_token_*__Znwm, sqlite_helpers, sqlite3_vector_init),
so the link of libmediapipe.so fails. Drop the semantic retriever's C API from
the library; mediapipe and its other tasks import and work as before.
2026-10-09 19:03:02 -04:00

22 lines
1.2 KiB
Diff

Drop the semantic retriever from libmediapipe.so
MediaPipe 1.1.0 links its SQLite memory and vector stores from prebuilt
archives (third_party/sqlite_prebuilt_files.bzl) built with Google's internal
toolchain: they carry no archive symbol table, reference Google's libc++
(std::__u) and internal symbols (__alloc_token_*__Znwm, sqlite_helpers,
sqlite3_vector_init), and cannot link against a libstdc++ build. Leave the
semantic retriever's C API out of the library; everything else, including
the universal embedder, still builds. Only an explicit import of
mediapipe.tasks.python.retrieval.semantic_retriever needs those symbols.
--- a/mediapipe/tasks/c/BUILD
+++ b/mediapipe/tasks/c/BUILD
@@ -45,7 +45,6 @@
"//mediapipe/tasks/c/audio/audio_embedder:audio_embedder_c_lib",
"//mediapipe/tasks/c/core:common",
"//mediapipe/tasks/c/metadata:flatbuffer_api_c_lib",
- "//mediapipe/tasks/c/retrieval/semantic_retriever:semantic_retriever_lib",
"//mediapipe/tasks/c/retrieval/universal_embedder:universal_embedder_lib",
"//mediapipe/tasks/c/text/language_detector:language_detector_c_lib",
"//mediapipe/tasks/c/text/text_classifier:text_classifier_c_lib",