GNU bug report logs - #57402
webkitgtk-with-libsoup2 fails to build on powerpc64le, breaking freecad

Previous Next

Package: guix;

Reported by: Marcel van der Boom <marcel <at> van-der-boom.nl>

Date: Thu, 25 Aug 2022 12:28:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Marcel van der Boom <marcel <at> van-der-boom.nl>
Cc: 57402 <at> debbugs.gnu.org, GNU Debbugs <control <at> debbugs.gnu.org>
Subject: bug#57402: FreeCAD build fails to configure / Qt5WebKitWidgets related.
Date: Tue, 29 Aug 2023 10:13:51 -0400
retitle 57402 webkitgtk-with-libsoup2 fails to build on powerpc64le, breaking freecad
reopen 57402
quit

Hi,

Marcel van der Boom <marcel <at> van-der-boom.nl> writes:

> This still fails for me, same error.

OK, thanks for the reply.

> To be clear, substitutable means there is a binary available from one
> of the substituation servers?

Yes.

> If so, guix is not using it as it tries to build freecad, starting
> with a configure, where it then fails.
>
> What am I missing?
>
>
> I am using a manifest where some of the dependencies of freecad skip
> tests, as in:
>
> (options->transformation
>   '((without-tests . "ffmpeg")
>     (without-tests . "hwloc")
>     (without-tests . "hdf4-alt")
>     (without-tests . "python-pandas")
>     (without-tests . "gst-plugins-bad")
>     (without-tests . "gtk")
>     (without-tests . "qtbase")))
>
> these are needed for a number of packages on ppc64le.

Ah, so it seems a problem specific to the powerpc64le architecture.

By using transformations as above, the derivations are changed so you
must build them locally.  But it seems the problem is bigger than that,
as there's no substitute for the powerpc64le-linux system:

--8<---------------cut here---------------start------------->8---
$ guix weather freecad --system=powerpc64le-linux
calcul de 1 dérivations de paquets pour powerpc64le-linux…
recherche de 1 éléments du dépôt sur https://ci.guix.gnu.org...
https://ci.guix.gnu.org ⛈
  0.0 % des substituts sont disponibles (0 sur 1)
  taille des substituts inconnue
  0,0 Mo sur le disque (décompressé)
  0,609 secondes par requête (0,6 secondes en tout)
  1,6 requêtes par seconde

  0.0 % (0 sur 1) des éléments manquants sont dans la queue
  au moins 1 000 constructions dans la queue
      aarch64-linux : 986 (98.6 %)
      powerpc64le-linux : 10 (1.0 %)
      armhf-linux : 4 (.4 %)
  vitesse de construction : 60.75 constructions par l'heure
      i686-linux : 30.72 constructions par heure
      x86_64-linux : 26.97 constructions par heure
      powerpc64le-linux : 2.98 constructions par heure
      aarch64-linux : 0.87 constructions par heure
recherche de 1 éléments du dépôt sur https://bordeaux.guix.gnu.org...
https://bordeaux.guix.gnu.org ⛈
  0.0 % des substituts sont disponibles (0 sur 1)
  taille des substituts inconnue
  0,0 Mo sur le disque (décompressé)
  0,539 secondes par requête (0,5 secondes en tout)
  1,9 requêtes par seconde
  (informations sur l’intégration continue indisponibles)
--8<---------------cut here---------------end--------------->8---

The last failed completed build can be seen here:
https://ci.guix.gnu.org/build/1778461/details.

There are multiple packages that do not currently build on powerpc64le
as can be seen by inspecting the 'Dependencies' section on that page.
I've restarted some builds that were spurious CI failures (connection
timeouts), but some are real ones, such as for the
webkitgtk-with-libsoup2 transitive dependency [0]:

--8<---------------cut here---------------start------------->8---
FAILED: ext/aalib/libgstaasink.so 
gcc  -o ext/aalib/libgstaasink.so ext/aalib/libgstaasink.so.p/gstaasink.c.o ext/aalib/libgstaasink.so.p/gstaatv.c.o ext/aalib/libgstaasink.so.p/gstaaplugin.c.o -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libgstaasink.so -Wl,-Bsymbolic-functions -Wl,-z,nodelete -Wl,-rpath=/gnu/store/275kk2wrasb9gqacaxz45a0x5s24qnd9-gst-plugins-good-1.22.2/lib /gnu/store/0l9aglwxbrkva96c7lrh334gb31rwbxc-gst-plugins-base-1.22.2/lib/libgstvideo-1.0.so /gnu/store/pm16mb257n6c0dh7g74ns3f54pzpwkly-gstreamer-1.22.2/lib/libgstbase-1.0.so /gnu/store/pm16mb257n6c0dh7g74ns3f54pzpwkly-gstreamer-1.22.2/lib/libgstreamer-1.0.so /gnu/store/iz2my9wgqvv088hnirdyxfa3q14xbh3m-glib-2.72.3/lib/libgobject-2.0.so /gnu/store/iz2my9wgqvv088hnirdyxfa3q14xbh3m-glib-2.72.3/lib/libglib-2.0.so -laa -Wl,--end-group
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aarender.o): in function `aa_renderpalette':
(.text+0x708): undefined reference to `pow'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurses.o):(.text+0xe8): undefined reference to `curs_set'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurses.o):(.text+0x130): undefined reference to `wrefresh'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurses.o):(.text+0x18c): undefined reference to `wmove'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurses.o):(.text+0x1d4): undefined reference to `waddnstr'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurses.o): in function `curses_init':
(.text+0x248): undefined reference to `initscr'
ld: (.text+0x278): undefined reference to `termattrs'
ld: (.text+0x2d0): undefined reference to `intrflush'
ld: (.text+0x344): undefined reference to `wclear'
ld: (.text+0x354): undefined reference to `intrflush'
ld: (.text+0x360): undefined reference to `wrefresh'
ld: (.text+0x3a4): undefined reference to `endwin'
ld: (.text+0x45c): undefined reference to `wclear'
ld: (.text+0x46c): undefined reference to `intrflush'
ld: (.text+0x478): undefined reference to `wrefresh'
ld: (.text+0x504): undefined reference to `endwin'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurses.o):(.toc+0x0): undefined reference to `stdscr'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x2c): undefined reference to `nodelay'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x70): undefined reference to `wgetch'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x114): undefined reference to `nodelay'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x224): undefined reference to `initscr'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x254): undefined reference to `cbreak'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x25c): undefined reference to `noecho'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x264): undefined reference to `nonl'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x27c): undefined reference to `keypad'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x330): undefined reference to `keypad'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x340): undefined reference to `nodelay'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x358): undefined reference to `nocbreak'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x360): undefined reference to `echo'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x370): undefined reference to `nl'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x3a8): undefined reference to `intrflush'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x3b4): undefined reference to `wclear'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x3c0): undefined reference to `wrefresh'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.text+0x3dc): undefined reference to `endwin'
ld: /gnu/store/s2jbrqa6j96j00q69kdnp4xzijjdd7jf-aalib-1.4rc5/lib/../lib/libaa.a(aacurkbd.o):(.toc+0x0): undefined reference to `stdscr'
collect2: error: ld returned 1 exit status
--8<---------------cut here---------------end--------------->8---

[0]  https://ci.guix.gnu.org/build/1778171/log/raw

It seems fixing this package may be enough to get freecad to build on
powerpc64le.  Help welcome!

-- 
Thanks,
Maxim




This bug report was last modified 1 year and 260 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.