guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

rfh: mingw guile.exe stalled by impact of 28dc10a4


From: Jan Nieuwenhuizen
Subject: rfh: mingw guile.exe stalled by impact of 28dc10a4
Date: Sun, 05 Jun 2016 14:05:37 +0200

Hi,

Last weekend I have been preparing my v9 patch set for the Mingw32 Guile
cross build, incorporating all comments that I got on v8 (thanks Andy
and Ludovic!).

I rebased onto latest master and made a script running some tests on
every single commit of the series, only to find out that after rebasing,
readline did not cross build anymore.

Since then I got somewhat closer but still do not understand what's
going on.  When I revert

    commit 28dc10a455689c807abc9241ed1094d902a9d9fa
    Author: Ludovic Courtès <address@hidden>
    Date:   Sun May 29 23:15:14 2016 +0200

        gnu: glibc: Refer to the target kernel headers when cross-compiling.

    ...

    diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
    index beb689e..b5e229e 100644
    --- a/gnu/packages/base.scm
    +++ b/gnu/packages/base.scm
    @@ -532,7 +532,10 @@ store.")
                                ,version)

                 (string-append "--with-headers="
    -                           (assoc-ref %build-inputs "linux-headers")
    +                           (assoc-ref ,(if (%current-target-system)
    +                                           '%build-target-inputs
    +                                           '%build-inputs)
    +                                      "linux-headers")
                                "/include")

                 ;; This is the default for most architectures as of GNU libc 
2.21,

then readline (and guile) can be cross-built for mingw.

However, with this commit present, when cross building readline on my v9
branch (https://gitlab.com/janneke/guix) like so:

    ./pre-inst-env guix build --target=i686-w64-mingw32 readline

this now triggers the build of gcc-cross-sans-libc-x86_64-linux-gnu
and gcc-x86_64-linux-gnu.

Building gcc-cross-sans-libc-x86_64-linux-gnu failed.  I added a commit
to disable some libraries

    +              "--disable-libvtv" ;x86_64-linux: needs libc
    +              "--disable-libitm" ;x86_64-linux: needs libc
    +              "--disable-libsanitizer" ;x86_64-linux: needs libc

and then both these cross compilers build.  After that, still triggered
by the readline cross buld, it fails trying to cross build make-boot0,
like so

    @ build-started 
/gnu/store/m6gq2xz5kd3vn4zm1i0i6j0immlgyhmg-make-boot0-4.1.drv - x86_64-linux 
/var/log/guix/drvs/m6//gq2xz5kd3vn4zm1i0i6j0immlgyhmg-make-boot0-4.1.drv.bz2
    ...
    starting phase `install-locale'
    warning: failed to install 'en_US.utf8' locale: Invalid argument
    phase `install-locale' succeeded after 0.0 seconds
    starting phase `unpack'
    In execvp of tar: No such file or directory
    phase `unpack' failed after 0.0 seconds
    builder for 
`/gnu/store/m6gq2xz5kd3vn4zm1i0i6j0immlgyhmg-make-boot0-4.1.drv' failed with 
exit code 1
    @ build-failed 
/gnu/store/m6gq2xz5kd3vn4zm1i0i6j0immlgyhmg-make-boot0-4.1.drv - 1 builder for 
`/gnu/store/m6gq2xz5kd3vn4zm1i0i6j0immlgyhmg-make-boot0-4.1.drv' failed with 
exit code 1
    cannot build derivation 
`/gnu/store/1fjnm2x2az4z4qaz3bad5p5zbygf5wqs-gcc-cross-boot0-4.9.3.drv': 1 
dependencies couldn't be built
    guix build: error: build failed: build of 
`/gnu/store/1fjnm2x2az4z4qaz3bad5p5zbygf5wqs-gcc-cross-boot0-4.9.3.drv' failed

I don't know what direction to go now.  Is this package also supposed to
be built or not?  Why does it fail, should it be fixed?  Should the
x86_64 gcc cross compilers get built, or maybe not?  Why do they fail?
etc.

Any help much appreciated.

Greetings,
Jan

-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar®  http://AvatarAcademy.nl  



reply via email to

[Prev in Thread] Current Thread [Next in Thread]