Even after fixing the missing java runtime problem, openoffice does not start. It says "no suitable windowing system found, exiting." This is with 1.9.88-4
ok, so... rpm -qRp openoffice.org-core-1.9.88-4.i386.rpm | grep startup-notification startup-notification a) do you have the i386 startup-notification installed ? b) if not, does adding the i386 one sort things out ? c) If that's whats happening, then the i386 one is not getting pulled in by the Requires, so is that a flaw on myside somehow, or somewhere else ?
*** Bug 153128 has been marked as a duplicate of this bug. ***
i386 openoffice.org Requires: startup-notification and libgcj but under x86_64 the i386 packages dependancies on these two packages *seems* to get fufilled by the 64bit equivalents, and rpm doesn't demand the i386 packages to be installed before allowing OOo to be installed. Which I assume it should do ? Manually added the two i386 packages reportedly makes the problem go away.
Requires: name will be met by the provides from the x86_64 package - you're getting what you asked for as by package name does not imply anything about arch. You could be asking for helper programs/script requirements rather than libs where the arch of the required package doesn't matter. For startup-notification it seems that eg libvclplug_gen680li.so is not +x so rpm auto requires isn't adding a coloured lib requirement for libstartup-notification-1.so.0 vs libstartup-notification-1.so.0()(64bit) you could Requires: libstartup-notification-1.so.0 which will get 32 bit startup-notification everywhere. Likewise adding Requires: libgcj.so.6 and keeping the Requires: libgcj >= 4.0.0 should work for 32bit libgcj. Is there any reason those files aren't executable so rpm library provides/requires work? chmod in %install and use %attr to reset another option.
fair enough will do. Though no-one else seems to know that this is how the multilib stuff works probably similiar problems spread throughout our rpms. All the .sos are dlopened by OOo, they've never apparently been +x upstream.
Note that for 1.1.x I had to do the following at the end of the %install section a very long time ago: # Make shared libraries executable so we can pull debuginfo from them chmod +wx %{buildroot}%{_libdir}/%{ooo_install_dir}/program/*so* chmod +wx %{buildroot}%{_libdir}/%{ooo_install_dir}/program/filter/*so* chmod +w %{buildroot}%{_libdir}/%{ooo_install_dir}/program/*.bin chmod +w %{buildroot}%{_libdir}/%{ooo_install_dir}/program/regcomp \ %{buildroot}%{_libdir}/%{ooo_install_dir}/program/pagein \ %{buildroot}%{_libdir}/%{ooo_install_dir}/program/ooovirg \ %{buildroot}%{_libdir}/%{ooo_install_dir}/program/msfontextract
It seems that +x is needed for more things than debuginfo I guess.
will do for 1.9.89-4
> rpm -qRp openoffice.org-core-1.9.89-4.i386.rpm | grep startup libstartup-notification-1.so.0 > rpm -qRp openoffice.org-core-1.9.89-4.i386.rpm | grep libgcj libgcj.so.6 That should do it if I understand things correctly now.
*** Bug 151578 has been marked as a duplicate of this bug. ***