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
?
Your comment

This issue is archived.

To comment on this conversation send an email to 59519@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 59519
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch