unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Cross compiling libxml2
@ 2013-12-12 18:05 John Darrington
  2013-12-12 21:46 ` Ludovic Courtès
  0 siblings, 1 reply; 2+ messages in thread
From: John Darrington @ 2013-12-12 18:05 UTC (permalink / raw)
  To: guix-devel

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

Trying to cross-compile several packages fails.  One reason is that many (inputs ...)
should be declared as (native-inputs ...) - I'm working on this problem.

But another problem which I'm not sure how to fix is that (assoc-ref inputs "libc")
returns false.  Hence the build fails:

Backtrace:
In ice-9/boot-9.scm:
  63: 19 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 18 [eval # #]
In ice-9/boot-9.scm:
2320: 17 [save-module-excursion #<procedure a073de0 at ice-9/boot-9.scm:3961:3 ()>]
3966: 16 [#<procedure a073de0 at ice-9/boot-9.scm:3961:3 ()>]
1645: 15 [%start-stack load-stack ...]
1650: 14 [#<procedure a076df8 ()>]
In unknown file:
   ?: 13 [primitive-load "/nix/store/3kpip8ls3nixclhi44qg9lnb5bfraca5-libxml2-2.9.0-guile-builder"]
In ice-9/eval.scm:
 387: 12 [eval # ()]
In srfi/srfi-1.scm:
 830: 11 [every1 #<procedure a212490 at /nix/store/d1qnsj2wf59m067qilasi61kgqs5wy3p-module-import/guix/build/gnu-build-system.scm:356:9 
In /nix/store/d1qnsj2wf59m067qilasi61kgqs5wy3p-module-import/guix/build/gnu-build-system.scm:
 360: 10 [#<procedure a212490 at /nix/store/d1qnsj2wf59m067qilasi61kgqs5wy3p-module-import/guix/build/gnu-build-system.scm:356:9 (expr)>
In ice-9/eval.scm:
 432: 9 [eval # #]
In ice-9/boot-9.scm:
 171: 8 [with-throw-handler #t ...]
 793: 7 [call-with-input-file "setup.py" ...]
In /nix/store/d1qnsj2wf59m067qilasi61kgqs5wy3p-module-import/guix/build/utils.scm:
 339: 6 [#<procedure a14c000 at /nix/store/d1qnsj2wf59m067qilasi61kgqs5wy3p-module-import/guix/build/utils.scm:338:10 (in)> #<input: set
 364: 5 [#<procedure a3b0b30 at /nix/store/d1qnsj2wf59m067qilasi61kgqs5wy3p-module-import/guix/build/utils.scm:360:6 (in out)> #<input: 
In srfi/srfi-1.scm:
 465: 4 [fold #<procedure a211510 at /nix/store/d1qnsj2wf59m067qilasi61kgqs5wy3p-module-import/guix/build/utils.scm:364:32 (r+p line)> .
In ice-9/eval.scm:
 387: 3 [eval # #]
 387: 2 [eval # #]
In unknown file:
   ?: 1 [string-append #f "/include"]
In ice-9/boot-9.scm:
 106: 0 [#<procedure a14c020 at ice-9/boot-9.scm:97:6 (thrown-k . args)> wrong-type-arg ...]

ice-9/boot-9.scm:106:20: In procedure #<procedure a14c020 at ice-9/boot-9.scm:97:6 (thrown-k . args)>:
ice-9/boot-9.scm:106:20: In procedure string-append: Wrong type (expecting string): #f
builder for `/nix/store/2phv2v237jb92cnd7c1f8fjhn1a3mgvx-libxml2-2.9.0.drv' failed with exit code 1


So it would seem that the alist inputs is incorrect when cross-compiling.

J'

-- 
PGP Public key ID: 1024D/2DE827B3 
fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.


[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

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

* Re: Cross compiling libxml2
  2013-12-12 18:05 Cross compiling libxml2 John Darrington
@ 2013-12-12 21:46 ` Ludovic Courtès
  0 siblings, 0 replies; 2+ messages in thread
From: Ludovic Courtès @ 2013-12-12 21:46 UTC (permalink / raw)
  To: John Darrington; +Cc: guix-devel

John Darrington <john@darrington.wattle.id.au> skribis:

> But another problem which I'm not sure how to fix is that (assoc-ref inputs "libc")
> returns false.  Hence the build fails:

Actually, when cross-compiling, the phase procedures are passed #:inputs
and #:native-inputs.  So “libc” is in the #:native-inputs alist, while
“cross-libc” is in the #:inputs alist.

So you’d have to do something like that:

  (assoc-ref inputs ,(if (%current-target-system) "cross-libc" "libc"))

This is not great, and we should probably fix that in the next
‘core-updates’.  In the meantime, that’s what we have.

The packages needed to cross-build ‘bootstrap-tarballs’ (as Hydra does)
either do not refer explicitly to libc, or have a special case that
removes the need to refer to it (as for ncurses), which is why we never
came across that before.

Thanks,
Ludo’.

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

end of thread, other threads:[~2013-12-12 21:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-12 18:05 Cross compiling libxml2 John Darrington
2013-12-12 21:46 ` 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).