LibreOffice 7.3.5.2 fails to build on i686-linux

  • Done
  • quality assurance status badge
Details
4 participants
  • Kaelyn
  • Ludovic Courtès
  • Tobias Geerinckx-Rice
  • Ricardo Wurmus
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
important
L
L
Ludovic Courtès wrote on 23 Nov 2022 17:43
(address . bug-guix@gnu.org)
87mt8hfwp0.fsf@inria.fr
The end of the log of the build for commit
2c9635cb47b0f52de635e93ebd137f1f7191c5fd looks like this:

Toggle snippet (39 lines)
[build LNK] Executable/unopkg.bin
[build DEP] LNK:Library/libicglo.so
[build LNK] Library/libicglo.so
[build MOD] shell
[build BIN] toolkit
[build MOD] ucb
[build MOD] vcl
[build MOD] xmlhelp
[build MOD] toolkit
[build DEP] LNK:Library/libsimplecanvaslo.so
[build LNK] Library/libsimplecanvaslo.so
[build DEP] LNK:Library/libcairocanvaslo.so
[build LNK] Library/libcairocanvaslo.so
[build DEP] LNK:Library/liboglcanvaslo.so
[build LNK] Library/liboglcanvaslo.so
[build DEP] LNK:Library/libOGLTranslo.so
[build LNK] Library/libOGLTranslo.so
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/svtools/source/misc/imageresourceaccess.o: warning: relocation against `_ZThn20_N4cppu21ImplInheritanceHelperIN3utl19OInputStreamWrapperEJN3com3sun4star2io9XSeekableEEE7acquireEv' in read-only section `.text'
[build CMP] canvas/source/simplecanvas/simplecanvas
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/svtools/source/misc/imageresourceaccess.o: in function `svt::GraphicAccess::getImageStream(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&)':
imageresourceaccess.cxx:(.text+0xabb): undefined reference to `non-virtual thunk to cppu::ImplInheritanceHelper<utl::OInputStreamWrapper, com::sun::star::io::XSeekable>::acquire()'
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/svtools/source/misc/imageresourceaccess.o: in function `svt::GraphicAccess::getImageXStream(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&)':
imageresourceaccess.cxx:(.text+0x100e): undefined reference to `non-virtual thunk to cppu::ImplInheritanceHelper<utl::OInputStreamWrapper, com::sun::star::io::XSeekable>::acquire()'
[build CMP] slideshow/source/engine/opengl/ogltrans
[build CMP] canvas/source/opengl/oglcanvas
[build CMP] canvas/source/cairo/cairocanvas
ld: warning: creating DT_TEXTREL in a shared object
collect2: error: ld returned 1 exit status
make[1]: *** [/tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/svtools/Library_svt.mk:20: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/instdir/program/libsvtlo.so] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:289: build] Error 2
error: in phase 'build': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("-j" "24" "gtk_update_icon_cache=true") exit-status: 2 term-signal: #f stop-signal: #f>
phase `build' failed after 1201.4 seconds
command "make" "-j" "24" "gtk_update_icon_cache=true" failed with status 2
builder for `/gnu/store/dcb1snan1sx0wdbdy7qq4jdn64is7mwf-libreoffice-7.3.5.2.drv' failed with exit code 1
@ build-failed /gnu/store/dcb1snan1sx0wdbdy7qq4jdn64is7mwf-libreoffice-7.3.5.2.drv - 1 builder for `/gnu/store/dcb1snan1sx0wdbdy7qq4jdn64is7mwf-libreoffice-7.3.5.2.drv' failed with exit code 1

Ludo’.
L
L
Ludovic Courtès wrote on 23 Nov 2022 17:55
control message for bug #53214
(address . control@debbugs.gnu.org)
87leo1fw58.fsf@gnu.org
block 53214 by 59519
quit
L
L
Ludovic Courtès wrote on 23 Nov 2022 23:50
control message for bug #59519
(address . control@debbugs.gnu.org)
8735a9e14o.fsf@gnu.org
severity 59519 important
quit
R
R
Ricardo Wurmus wrote on 24 Nov 2022 19:37
LibreOffice 7.3.5.2 fails to build on i686-linux
(address . 59519@debbugs.gnu.org)
87mt8gmc2y.fsf@elephly.net
I tried building with ld-gold-wrapper, but it didn’t fix it:

Toggle snippet (15 lines)
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/svtools/source/misc/imageresourceaccess.o: warning: relocation against `_ZThn20_N4cppu21ImplInheritanceHelperIN3utl19OInputStreamWrapperEJN3com3sun4star2io9XSeekableEEE7acquireEv' in read-only section `.text'
[build CXX] reportdesign/source/ui/dlg/DateTime.cxx
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/svtools/source/misc/imageresourceaccess.o: in function `svt::GraphicAccess::getImageStream(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&)':
imageresourceaccess.cxx:(.text+0xabb): undefined reference to `non-virtual thunk to cppu::ImplInheritanceHelper<utl::OInputStreamWrapper, com::sun::star::io::XSeekable>::acquire()'
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/svtools/source/misc/imageresourceaccess.o: in function `svt::GraphicAccess::getImageXStream(com::sun::star
::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&)':
imageresourceaccess.cxx:(.text+0x100e): undefined reference to `non-virtual thunk to cppu::ImplInheritanceHelper<utl::OInputStreamWrapper, com::sun::star::io::XSeekable>::acquire()'
ld: warning: creating DT_TEXTREL in a shared object
collect2: error: ld returned 1 exit status
make[1]: *** [/tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/svtools/Library_svt.mk:20: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/instdir/program/libsvtlo.
so] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:289: build] Error 2

Here’s the command I used:

guix build --system=i686-linux -e "(begin (import (guix)) (let ((p (@ (gnu packages libreoffice) libreoffice))) (package (inherit p) (native-inputs (modify-inputs (package-native-inputs p) (prepend (module-ref (resolve-interface '(gnu packages commencement)) 'ld-gold-wrapper)))))))"

--
Ricardo
R
R
Ricardo Wurmus wrote on 25 Nov 2022 10:18
(address . 59519@debbugs.gnu.org)
87ilj3mlw7.fsf@elephly.net
Toggle snippet (8 lines)
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/xmloff/source/core/xmlimp.o: warning: relocation against `_ZThn20_N4cppu14WeakImplHelperIJN3com3sun4star3xml3sax18XFastAttributeListENS3_4util10XCloneableEEE7acquireEv' in read-only section `.text'
ld: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/CxxObject/xmloff/source/core/xmlimp.o: in function `SvXMLImport::SetAutoStyles(SvXMLStylesContext*)':
xmlimp.cxx:(.text+0x86f2): undefined reference to `non-virtual thunk to cppu::WeakImplHelper<com::sun::star::xml::sax::XFastAttributeList, com::sun::star::util::XCloneable>::acquire()'
ld: warning: creating DT_TEXTREL in a shared object
collect2: error: ld returned 1 exit status
make[1]: *** [/tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/xmloff/Library_xo.mk:20: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/instdir/program/libxolo.so] Error 1

I think this is pretty good. We got past the original error and have a
very similar error in xmlimp, so I guess we’ll just extend this patch.

--
Ricardo
K
K
Kaelyn wrote on 25 Nov 2022 20:50
LibreOffice 7.3.5.2 fails to build on i686-linux
(name . 59519@debbugs.gnu.org)(address . 59519@debbugs.gnu.org)
dguL29yZIxbUVcdKS3Q2brbIsrTihwT9P7B-UTKxPBP6T80ZUONLScXpYFkrLXouAKlY0W1gmxgdnqCZRolV8GHYXioxy5rDDtZf2BI4hQo=@protonmail.com
Hi,

I was able to build libreoffice for i686-linux by adding "--enable-lto" and "--without-galleries" to the configure flags. The former seemed to resolve the linking issue, and the latter was to deal with the build failing because of 0 themes being found.

That error was:
[build GAL] backgrounds
[build GAL] sounds
[build MOD] postprocess
Work on gallery 'file:///tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/Gallery/backgrounds'
Existing themes: 0
make[1]: *** [/tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/solenv/gbuild/Gallery.mk:57: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/Gallery/backgrounds.done] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [/tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/solenv/gbuild/Gallery.mk:57: /tmp/guix-build-libreoffice-7.3.5.2.drv-0/libreoffice-7.3.5.2/workdir/Gallery/sounds.done] Error 1
make: *** [Makefile:289: build] Error 2
error: in phase 'build': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("-j" "24" "gtk_update_icon_cache=true") exit-status: 2 term-signal: #f stop-signal: #f>
phase `build' failed after 954.9 seconds
command "make" "-j" "24" "gtk_update_icon_cache=true" failed with status 2

And a basic patch to add the two flags:
Toggle diff (13 lines)
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index 8343f8ffc6..9ded4b5e5e 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -1235,6 +1235,8 @@ (define (install-appdata app)
;; when our default compiler is >=GCC 6.
"--disable-pdfium"
"--without-doxygen"
+ "--enable-lto"
+ ;; "--without-galleries"
"--enable-build-opensymbol")))
(native-inputs
(list bison
K
K
Kaelyn wrote on 25 Nov 2022 20:54
(name . 59519@debbugs.gnu.org)(address . 59519@debbugs.gnu.org)
MwHPBFVCPGyaZxqYu99j8dZ7ZdVpZMiJRxtgZQ5DZWM5UJfWHhq7n8nWVImgD9cEzPY7gFfsLOYJ0QTB7gOdy_5r5MchTX1iv07QlfSrEoI=@protonmail.com
Sorry, I messed up the patch a little as I wanted to get the error message that prompted adding "--without-galleries". It should be:

Toggle diff (13 lines)
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index 8343f8ffc6..7fb3fe1327 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -1235,6 +1235,8 @@ (define (install-appdata app)
;; when our default compiler is >=GCC 6.
"--disable-pdfium"
"--without-doxygen"
+ "--enable-lto"
+ "--without-galleries"
"--enable-build-opensymbol")))
(native-inputs
(list bison
K
K
Kaelyn wrote on 26 Nov 2022 03:02
(name . 59519@debbugs.gnu.org)(address . 59519@debbugs.gnu.org)
Z2LMwUZaypR2VGnb3bUUN7tetAhGixOo9QFHkinSutT7_-xxP3PkYZImdRGr4jGjyNiPRJfFNR3yfnpEI7JCv9TjTAgOlHTD-jICoqg_Hc8=@protonmail.com
Here is a revised diff with comments added for the flags.

Toggle diff (17 lines)
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index 8343f8ffc6..ea7f0f19e9 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -1235,6 +1235,12 @@ (define (install-appdata app)
;; when our default compiler is >=GCC 6.
"--disable-pdfium"
"--without-doxygen"
+ ;; Enable building with LTO to avoid linker errors about
+ ;; non-virtual thunks on i686-linux.
+ "--enable-lto"
+ ;; Disable galleries to avoid errors rebuilding the Gtk icon
+ ;; cache, at least on i686-linux.
+ "--without-galleries"
"--enable-build-opensymbol")))
(native-inputs
(list bison
T
T
Tobias Geerinckx-Rice wrote on 26 Nov 2022 23:15
Re: bug#59519: LibreOffice 7.3.5.2 fails to build on i686-linux
(name . Kaelyn)(address . kaelyn.alexi@protonmail.com)(address . 59519-done@debbugs.gnu.org)
875yf19x7c.fsf@nckx
Hi Kaelyn,

Kaelyn via Bug reports for GNU Guix ???
Toggle quote (2 lines)
> Here is a revised diff with comments added for the flags.

Thanks again! Pushed as 536adbd7cca1f257261645d9cfd7910a0055a60e,
also with a commit message added.

Toggle quote (9 lines)
> + ;; Enable building with LTO to avoid linker errors
> about
> + ;; non-virtual thunks on i686-linux.
> + "--enable-lto"
> + ;; Disable galleries to avoid errors rebuilding the
> Gtk icon
> + ;; cache, at least on i686-linux.
> + "--without-galleries"

The importance of comments is to document the ‘why’. The ‘what’
is obvious from the flags themselves, so I removed the first few
words of each comment to make them fit nicely on 1 line.

Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCY4KQqA0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW15jqYBAJwJ4zb/GZ40Ais1Dsi4VexDdDs0k+sN7h+U7zOu
QzmTAP40Vs37gulFPC4BZ+rltnj2nU5qjowMpSc9MK6m89LiBA==
=bpOj
-----END PGP SIGNATURE-----

Closed
?