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.

Reply via email to