Re: libreoffice Rust-UNO binding on ppc64el (and ppc64)
Rene Engelhard <[email protected]> Mon, 1 Dec 2025 21:12:33 +0100
| Newsgroups | gmane.linux.debian.ports.powerpc |
|---|---|
| Organization | Debian Project |
| Message-ID | <[email protected]> |
Hi, Am 1. Dezember 2025 11:45:28 MEZ schrieb Trupti <[email protected]>: >Hi, > >I tested this on a ppc64el LPAR with the 26.2.0~alpha-3 packages from experimental. > >The Rust UNO extension is installed and visible in the UI, Yeah: (experimental_ppc64el-dchroot)rene@platti:~/libreoffice-26.2.0~alpha1$ unopkg list --bundled All deployed bundled extensions: Identifier: org.libreoffice/rust_uno/example Version: 1 URL: vnd.sun.star.expand:$BUNDLED_EXTENSIONS/rust_uno-example is registered: yes Media-Type: application/vnd.sun.star.package-bundle Description: bundled Packages: { URL: vnd.sun.star.expand:$BUNDLED_EXTENSIONS/rust_uno-example/Addons.xcu is registered: yes Media-Type: application/vnd.sun.star.configuration-data Description: URL: vnd.sun.star.expand:$BUNDLED_EXTENSIONS/rust_uno-example/ProtocolHandler.xcu is registered: yes Media-Type: application/vnd.sun.star.configuration-data Description: } There actually is no checking whether it actually works unfortunately anymore when registering I think but in this case it's pre-installed anyway, so its too late. But in a just-built LO this also works in that install as a user: (experimental_ppc64el-dchroot)rene@platti:~/libreoffice-26.2.0~alpha1$ instdir/program/unopkg add workdir/Extension/rust_uno-example.oxt (experimental_ppc64el-dchroot)rene@platti:~/libreoffice-26.2.0~alpha1$ instdir/program/unopkg list All deployed user extensions: Identifier: org.libreoffice/rust_uno/example Version: 1 URL: vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE/uno_packages/lu131802wh2dj.tmp_/rust_uno-example.oxt is registered: yes Media-Type: application/vnd.sun.star.package-bundle Description: bundled Packages: { URL: vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE/uno_packages/lu131802wh2dj.tmp_/rust_uno-example.oxt/Addons.xcu is registered: yes Media-Type: application/vnd.sun.star.configuration-data Description: URL: vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE/uno_packages/lu131802wh2dj.tmp_/rust_uno-example.oxt/ProtocolHandler.xcu is registered: yes Media-Type: application/vnd.sun.star.configuration-data Description: } But still: (patchs in that script adapted): (experimental_ppc64el-dchroot)rene@platti:~/libreoffice-26.2.0~alpha1$ debian/tests/test-rust_uno-example ====== Call Rust UNO -> Example menu entry provided by the extension ====== >but the "RustUNO" menu entry is disabled, so it cannot be executed manually. >I have attached screenshot of UI. Interesting. That explains why it doesn't work at all. Without [1] the Rust-UNO menu even appeared (even though librust_uno-cpplo.so was not found) in my tests but didn't work - but this is even worse... Wonder why this happens, need to think about it/ask upstream... >Running ldd on the extension shows missing libraries, >ldd libreoffice/share/extensions/rust_uno-example/rust_uno-example.uno.so Those are there. > librust_uno-cpplo.so => not found https://packages.debian.org/experimental/ppc64el/libreoffice-core/filelist: [..] /usr/lib/libreoffice/program/librust_uno-cpplo.so [...] > libreglo.so => not found > libunoidllo.so => not found > libxmlreaderlo.so => not found Those too, see https://packages.debian.org/experimental/ppc64el/uno-libs-private/filelist And they are supposed to be found via $ORIGIN in rpath. Which should work here, too, at least generally, otherwise LO would not even start and the other tests would fail miserably, too. $ objdump -p /usr/lib/libreoffice/share/extensions/rust_uno-example/rust_uno-example.uno.so | grep ORI RUNPATH $ORIGIN [1] And this works everywhere else... Regards, Rene [1] cf. https://git.libreoffice.org/core/+/295c988cadd382cc4561c20e646225454a049488%5E%21