Hello,
Thanks for your detailed explanation.
I checked the RPATH and also missing libraries are resent.
objdump -p
/usr/lib/libreoffice/share/extensions/rust_uno-example/rust_uno-example.uno.so
| grep -E 'RPATH|RUNPATH'
RUNPATH $ORIGIN
ls -l /usr/lib/libreoffice/share/extensions/rust_uno-example/
total 608
-rw-r--r-- 1 root root 1634 Nov 24 13:41 Addons.xcu
-rw-r--r-- 1 root root 1156 Nov 24 13:41 description.xml
-rw-r--r-- 1 root root 528880 Nov 24 13:41 librust_uno.so
drwxr-xr-x 2 root root 4096 Nov 27 18:53 META-INF
-rw-r--r-- 1 root root 474 Nov 24 13:41 platform.components
-rw-r--r-- 1 root root 1235 Nov 24 13:41 ProtocolHandler.xcu
-rw-r--r-- 1 root root 68048 Nov 24 13:41 rust_uno-example.uno.so
I checked the runtime behavior. The loader does find and initialise the
library,for example:
LD_DEBUG=libs libreoffice --version 2>&1 | grep librust
32474: find library=librust_uno-cpplo.so [0]; searching
32474: trying
file=/usr/lib/libreoffice/program/glibc-hwcaps/power10/librust_uno-cpplo.so
32474: trying
file=/usr/lib/libreoffice/program/glibc-hwcaps/power9/librust_uno-cpplo.so
32474: trying
file=/usr/lib/libreoffice/program/librust_uno-cpplo.so
32474: calling init:
/usr/lib/libreoffice/program/librust_uno-cpplo.so
32474: calling fini:
/usr/lib/libreoffice/program/librust_uno-cpplo.so [0]
So the shared objects load successfully, but the component still remains
disabled in the UI. That seems to point to a runtime issue on ppc64el
rather than a loader or packaging problem.
Let me know if you want further tests.
Thanks and Regards,
Trupti.