unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Cross-compiling bootstrap tarballs fails on core-updates
@ 2018-04-16 17:15 Marius Bakke
  2018-04-18  3:40 ` Chris Marusich
  2018-04-22 20:42 ` Ludovic Courtès
  0 siblings, 2 replies; 3+ messages in thread
From: Marius Bakke @ 2018-04-16 17:15 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 3491 bytes --]

Hello!

Building 'bootstrap-tarballs' for other architectures fails on
core-updates.  Here is the comparison to the previous core-updates
evaluation in December:

https://hydra.gnu.org/eval/109945?compare=109875#tabs-now-fail

There seems to be a couple of different problems here.

'patch' fails to build due to a conflicting declaration of
'__mktime_internal':

--8<---------------cut here---------------start------------->8---
  CCLD     patch
/gnu/store/9v09kidvqykyk2kh26q297di3lkjc8vy-glibc-cross-arm-linux-gnueabihf-2.27-static/lib/libc.a(mktime.o): In function `__mktime_internal':
/tmp/guix-build-glibc-cross-arm-linux-gnueabihf-2.27.drv-0/glibc-2.27/time/mktime.c:353: multiple definition of `__mktime_internal'
../lib/libpatch.a(mktime.o):/tmp/guix-build-patch-2.7.6.drv-0/patch-2.7.6/lib/mktime.c:317: first defined here
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1230: patch] Error 1
--8<---------------cut here---------------end--------------->8---

Note that there is a warning about __mktime_internal earlier:

--8<---------------cut here---------------start------------->8---
In file included from timegm.c:20:0:                                                               
timegm.c: In function 'rpl_timegm':                                                                
../config.h:1974:25: warning: implicit declaration of function '__mktime_internal' [-Wimplicit-function-declaration]
 #define mktime_internal __mktime_internal

timegm.c:30:28: note: in expansion of macro 'mktime_internal'
 # define __mktime_internal mktime_internal

timegm.c:39:10: note: in expansion of macro '__mktime_internal'
   return __mktime_internal (tmp, __gmtime_r, &gmtime_offset);
--8<---------------cut here---------------end--------------->8---

Then we have 'ncurses' failing in the install phase with:

--8<---------------cut here---------------start------------->8---
make[1]: Entering directory '/tmp/guix-build-ncurses-6.1.drv-0/ncurses-6.1/progs'
mkdir -p /gnu/store/553j76738bh6bcr31vsyri0wpxir2wkw-ncurses-6.1/bin
/gnu/store/63gkgnixg6xj3m9cgl25ib2zxl51ngw0-coreutils-8.29/bin/install -c -s tic     /gnu/store/553j76738bh6bcr31vsyri0wpxir2wkw-ncurses-6.1/bin/`echo tic|       sed 's/$//'|sed 's,x,x,'|sed 's/$//'`
strip: Unable to recognise the format of the input file `/gnu/store/553j76738bh6bcr31vsyri0wpxir2wkw-ncurses-6.1/bin/tic'
/gnu/store/63gkgnixg6xj3m9cgl25ib2zxl51ngw0-coreutils-8.29/bin/install: strip process terminated abnormally
make[1]: *** [Makefile:201: install.progs] Error 1
--8<---------------cut here---------------end--------------->8---

The error message here is odd: /gnu/store/.../bin/tic is not installed
yet at this point.  The built binary looks fine however.  Quoth `file`:

/dev/shm/guix-build-ncurses-6.1.drv-0/ncurses-6.1/progs/tic: ELF 32-bit LSB executable, ARM, EABI5
version 1 (SYSV), dynamically linked, interpreter /gnu/store/jiw5wrjvcipfxnpl56572x4bf6gdvypf-glibc-cross-arm-linux-gnueabihf-2.27/lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, with debug_info, not stripped

I'm not sure why these failures happen only when cross-compiling.  The
respective native builds are okay.  Thoughts?

For those following along at home, you can reproduce these failures by
checking out the core-updates branch, and then run:

./pre-inst-env guix build --target=arm-linux-gnueabihf bootstrap-tarballs

(or any other target triplet, they fail in the same way)

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Cross-compiling bootstrap tarballs fails on core-updates
  2018-04-16 17:15 Cross-compiling bootstrap tarballs fails on core-updates Marius Bakke
@ 2018-04-18  3:40 ` Chris Marusich
  2018-04-22 20:42 ` Ludovic Courtès
  1 sibling, 0 replies; 3+ messages in thread
From: Chris Marusich @ 2018-04-18  3:40 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 252 bytes --]

Marius Bakke <mbakke@fastmail.com> writes:

> Building 'bootstrap-tarballs' for other architectures fails on
> core-updates.

Could this be related to the following bug report?

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24841

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Cross-compiling bootstrap tarballs fails on core-updates
  2018-04-16 17:15 Cross-compiling bootstrap tarballs fails on core-updates Marius Bakke
  2018-04-18  3:40 ` Chris Marusich
@ 2018-04-22 20:42 ` Ludovic Courtès
  1 sibling, 0 replies; 3+ messages in thread
From: Ludovic Courtès @ 2018-04-22 20:42 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

Hello Marius,

Marius Bakke <mbakke@fastmail.com> skribis:

> There seems to be a couple of different problems here.
>
> 'patch' fails to build due to a conflicting declaration of
> '__mktime_internal':
>
>   CCLD     patch
> /gnu/store/9v09kidvqykyk2kh26q297di3lkjc8vy-glibc-cross-arm-linux-gnueabihf-2.27-static/lib/libc.a(mktime.o): In function `__mktime_internal':
> /tmp/guix-build-glibc-cross-arm-linux-gnueabihf-2.27.drv-0/glibc-2.27/time/mktime.c:353: multiple definition of `__mktime_internal'
> ../lib/libpatch.a(mktime.o):/tmp/guix-build-patch-2.7.6.drv-0/patch-2.7.6/lib/mktime.c:317: first defined here
> collect2: error: ld returned 1 exit status
> make[2]: *** [Makefile:1230: patch] Error 1
>
>
> Note that there is a warning about __mktime_internal earlier:
>
> In file included from timegm.c:20:0:                                                               
> timegm.c: In function 'rpl_timegm':                                                                
> ../config.h:1974:25: warning: implicit declaration of function '__mktime_internal' [-Wimplicit-function-declaration]
>  #define mktime_internal __mktime_internal
>
> timegm.c:30:28: note: in expansion of macro 'mktime_internal'
>  # define __mktime_internal mktime_internal
>
> timegm.c:39:10: note: in expansion of macro '__mktime_internal'
>    return __mktime_internal (tmp, __gmtime_r, &gmtime_offset);
>
>
> Then we have 'ncurses' failing in the install phase with:
>
> make[1]: Entering directory '/tmp/guix-build-ncurses-6.1.drv-0/ncurses-6.1/progs'
> mkdir -p /gnu/store/553j76738bh6bcr31vsyri0wpxir2wkw-ncurses-6.1/bin
> /gnu/store/63gkgnixg6xj3m9cgl25ib2zxl51ngw0-coreutils-8.29/bin/install -c -s tic     /gnu/store/553j76738bh6bcr31vsyri0wpxir2wkw-ncurses-6.1/bin/`echo tic|       sed 's/$//'|sed 's,x,x,'|sed 's/$//'`
> strip: Unable to recognise the format of the input file `/gnu/store/553j76738bh6bcr31vsyri0wpxir2wkw-ncurses-6.1/bin/tic'
> /gnu/store/63gkgnixg6xj3m9cgl25ib2zxl51ngw0-coreutils-8.29/bin/install: strip process terminated abnormally
> make[1]: *** [Makefile:201: install.progs] Error 1

This is fixed by these commits:

  c77835db0 * gnu: tar: Work around a cross-compilation issue.
  b0ff3606b * gnu: ncurses: Do not use "install -s" when cross-compiling.
  d3878d3d5 * gnu: patch: Work around a cross-compilation issue.

Thanks for the heads-up!

Ludo’.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-04-22 20:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-16 17:15 Cross-compiling bootstrap tarballs fails on core-updates Marius Bakke
2018-04-18  3:40 ` Chris Marusich
2018-04-22 20:42 ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).