* cross compiling using qemu-user-static
@ 2022-02-05 15:14 Tobias Platen
2022-02-05 16:09 ` Maxime Devos
` (3 more replies)
0 siblings, 4 replies; 9+ messages in thread
From: Tobias Platen @ 2022-02-05 15:14 UTC (permalink / raw)
To: guix-devel
Some time ago I was able to cross compile emacs to run on the
OpenPandora[1] using guix. That seems to be broken:
guix pack --target=armhf-linux-gnu openssh emacs libhandy
guix pack: error: gnu/packages/emacs.scm:77:2: emacs@27.2: build system
`glib-or-gtk' does not support cross builds
So I think one could copy qemu-user-static for the target architecture
into the build directory and execute native versions of the software.
[1] http://www.openpandora.org/
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
2022-02-05 15:14 cross compiling using qemu-user-static Tobias Platen
@ 2022-02-05 16:09 ` Maxime Devos
[not found] ` <c2b72e18bf99776b44b7ff0f1ea34edca9ff99f8.camel@platen-software.de>
2022-02-05 16:10 ` Maxime Devos
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Maxime Devos @ 2022-02-05 16:09 UTC (permalink / raw)
To: Tobias Platen, guix-devel
[-- Attachment #1: Type: text/plain, Size: 872 bytes --]
Tobias Platen schreef op za 05-02-2022 om 16:14 [+0100]:
> Some time ago I was able to cross compile emacs to run on the
> OpenPandora[1] using guix. That seems to be broken:
>
> guix pack --target=armhf-linux-gnu openssh emacs libhandy
> guix pack: error: gnu/packages/emacs.scm:77:2: emacs@27.2: build system
> `glib-or-gtk' does not support cross builds
Is your guix up to date? Cross-compilation for 'glib-or-gtk' has been
implemented in:
commit 881a5d26b2fdf9ccb222b26b2a533cd09ffc62c8
Author: Maxime Devos <maximedevos@telenet.be>
Date: Tue Aug 24 11:06:53 2021 +0200
build-system/glib-or-gtk: Support cross-compilaton.
* guix/build-system/glib-or-gtk.scm
(lower): Add 'implicit-cross-inputs?' argument. Generate a bag
when cross-compiling.
(glib-or-gtk-cross-build): New procedure.
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
2022-02-05 15:14 cross compiling using qemu-user-static Tobias Platen
2022-02-05 16:09 ` Maxime Devos
@ 2022-02-05 16:10 ` Maxime Devos
2022-02-05 16:13 ` Maxime Devos
2022-02-06 18:47 ` Tobias Platen
3 siblings, 0 replies; 9+ messages in thread
From: Maxime Devos @ 2022-02-05 16:10 UTC (permalink / raw)
To: Tobias Platen, guix-devel
[-- Attachment #1: Type: text/plain, Size: 185 bytes --]
Tobias Platen schreef op za 05-02-2022 om 16:14 [+0100]:
> guix pack --target=armhf-linux-gnu openssh emacs libhandy
FWIW the triple is arm-linux-gnueabihf.
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
2022-02-05 15:14 cross compiling using qemu-user-static Tobias Platen
2022-02-05 16:09 ` Maxime Devos
2022-02-05 16:10 ` Maxime Devos
@ 2022-02-05 16:13 ` Maxime Devos
[not found] ` <982bb7e3e8194968c29e9a56bdddd2bb1fc0bab7.camel@platen-software.de>
2022-02-06 18:47 ` Tobias Platen
3 siblings, 1 reply; 9+ messages in thread
From: Maxime Devos @ 2022-02-05 16:13 UTC (permalink / raw)
To: Tobias Platen, guix-devel
[-- Attachment #1: Type: text/plain, Size: 504 bytes --]
Tobias Platen schreef op za 05-02-2022 om 16:14 [+0100]:
> So I think one could copy qemu-user-static for the target architecture
> into the build directory and execute native versions of the software.
>
> [1] http://www.openpandora.org/
From a technical point of view, that's mostly native compilation from
Guix' perspective. Try "guix pack --system=armhf-linux openssh emacs
libhandy" after setting up QEMU (see ‘Transparent Emulation with QEMU’
in the manual).
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
[not found] ` <982bb7e3e8194968c29e9a56bdddd2bb1fc0bab7.camel@platen-software.de>
@ 2022-02-05 17:14 ` Maxime Devos
0 siblings, 0 replies; 9+ messages in thread
From: Maxime Devos @ 2022-02-05 17:14 UTC (permalink / raw)
To: Tobias Platen; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 396 bytes --]
Tobias Platen schreef op za 05-02-2022 om 17:39 [+0100]:
> I was unaware that Guix already has that feature.
> But on my Talos II, I am using Guix on top of Debian,
> and I don't have Shepherd running.
Debian has two packages for setting up binfmt: qemu-user-static and
qemu-user-binfmt. Perhaps even if qemu-user-binfmt doesn't work,
qemu-user-static does work?
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
[not found] ` <c2b72e18bf99776b44b7ff0f1ea34edca9ff99f8.camel@platen-software.de>
@ 2022-02-05 17:22 ` Maxime Devos
[not found] ` <26c6d942d8326be8a62b83a142ddf67993e76912.camel@platen-software.de>
2022-02-05 17:26 ` Maxime Devos
1 sibling, 1 reply; 9+ messages in thread
From: Maxime Devos @ 2022-02-05 17:22 UTC (permalink / raw)
To: Tobias Platen; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 2573 bytes --]
Tobias Platen schreef op za 05-02-2022 om 17:20 [+0100]:
> On Sat, 2022-02-05 at 17:09 +0100, Maxime Devos wrote:
> > Tobias Platen schreef op za 05-02-2022 om 16:14 [+0100]:
> > > Some time ago I was able to cross compile emacs to run on the
> > > OpenPandora[1] using guix. That seems to be broken:
> > >
> > > guix pack --target=armhf-linux-gnu openssh emacs libhandy
> > > guix pack: error: gnu/packages/emacs.scm:77:2: emacs@27.2: build
> > > system
> > > `glib-or-gtk' does not support cross builds
> >
> > Is your guix up to date? Cross-compilation for 'glib-or-gtk' has
> > been
> > implemented in:
> >
> > commit 881a5d26b2fdf9ccb222b26b2a533cd09ffc62c8
> > Author: Maxime Devos <maximedevos@telenet.be>
> > Date: Tue Aug 24 11:06:53 2021 +0200
> >
> I did a guix pull today.
Weird, if I do
‘guix pack --target=arm-linux-gnueabihf emacs libhandy openssh’
then it starts substituting source code and building:
> $ guix pack --target=arm-linux-gnueabihf emacs libhandy openssh
> De volgende distillaties zullen gebouwd worden:
> /gnu/store/c5svd5lbx26rysgm3r4ln89n1l74cif0-openssl-1.1.1m.drv
> /gnu/store/2scsyrlwbjy466p2dy2qay5fwwm6yp5x-glibc-cross-arm-linux-gnueabihf-2.33.drv
> /gnu/store/60x13abw5wr2yr1d0d6db2pspgbla1d0-linux-libre-headers-cross-arm-linux-gnueabihf-5.10.35.drv
> /gnu/store/6w9anqnsfpgjk90x4ldbq17m4g75g4lc-gcc-cross-arm-linux-gnueabihf-10.3.0.drv
> /gnu/store/55m8qc9ybxrrip3pizxbcka0axfp0z11-expat-2.4.4.drv
>
> 30,7 MB zal binnengehaald worden
> expat-2.4.4.tar.xz 439KiB 2.5MiB/s 00:00 [##################] 100.0%
> binutils-cross-arm-linux-gnueabihf-2.37 6.9MiB 1.9MiB/s 00:04 [##################] 100.0%
> gcc-cross-sans-libc-arm-linux-gnueabihf-10.3.0-lib 2.7MiB 2.6MiB/s 00:01 [##################] 100.0%
> glibc-cross-arm-linux-gnueabihf-2.33 18.0MiB 1.7MiB/s 00:11 [##################] 100.0%
> ld-wrapper-arm-linux-gnueabihf-0 13KiB 2.1MiB/s 00:00 [##################] 100.0%
> openssl-1.1.1m.tar.xz 7.1MiB 3.2MiB/s 00:02 [##################] 100.0%
> gcc-cross-sans-libc-arm-linux-gnueabihf-10.3.0 14.8MiB 4.0MiB/s 00:04 [##################] 100.0%
> /gnu/store/60x13abw5wr2yr1d0d6db2pspgbla1d0-linux-libre-headers-cross-arm-linux-gnueabihf-5.10.35.drv bouwen...
> | 'unpack' fase^C
What does "type -p guix" return? $HOME/.guix-profile/bin/guix or
/usr/{local/,}bin/guix or something else?
Greetings,
Maxime
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
[not found] ` <c2b72e18bf99776b44b7ff0f1ea34edca9ff99f8.camel@platen-software.de>
2022-02-05 17:22 ` Maxime Devos
@ 2022-02-05 17:26 ` Maxime Devos
1 sibling, 0 replies; 9+ messages in thread
From: Maxime Devos @ 2022-02-05 17:26 UTC (permalink / raw)
To: Tobias Platen; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 2609 bytes --]
Tobias Platen schreef op za 05-02-2022 om 17:20 [+0100]:
> On Sat, 2022-02-05 at 17:09 +0100, Maxime Devos wrote:
> > Tobias Platen schreef op za 05-02-2022 om 16:14 [+0100]:
> > > Some time ago I was able to cross compile emacs to run on the
> > > OpenPandora[1] using guix. That seems to be broken:
> > >
> > > guix pack --target=armhf-linux-gnu openssh emacs libhandy
> > > guix pack: error: gnu/packages/emacs.scm:77:2: emacs@27.2: build
> > > system
> > > `glib-or-gtk' does not support cross builds
> >
> > Is your guix up to date? Cross-compilation for 'glib-or-gtk' has
> > been
> > implemented in:
> >
> > commit 881a5d26b2fdf9ccb222b26b2a533cd09ffc62c8
> > Author: Maxime Devos <maximedevos@telenet.be>
> > Date: Tue Aug 24 11:06:53 2021 +0200
> >
> I did a guix pull today.
Weird, if I do
‘guix pack --target=arm-linux-gnueabihf emacs libhandy openssh’
then it starts substituting source code and building:
> $ guix pack --target=arm-linux-gnueabihf emacs libhandy openssh
> De volgende distillaties zullen gebouwd worden:
> /gnu/store/c5svd5lbx26rysgm3r4ln89n1l74cif0-openssl-1.1.1m.drv
> /gnu/store/2scsyrlwbjy466p2dy2qay5fwwm6yp5x-glibc-cross-arm-linux-gnueabihf-2.33.drv
> /gnu/store/60x13abw5wr2yr1d0d6db2pspgbla1d0-linux-libre-headers-cross-arm-linux-gnueabihf-5.10.35.drv
> /gnu/store/6w9anqnsfpgjk90x4ldbq17m4g75g4lc-gcc-cross-arm-linux-gnueabihf-10.3.0.drv
> /gnu/store/55m8qc9ybxrrip3pizxbcka0axfp0z11-expat-2.4.4.drv
>
> 30,7 MB zal binnengehaald worden
> expat-2.4.4.tar.xz 439KiB 2.5MiB/s 00:00 [##################] 100.0%
> binutils-cross-arm-linux-gnueabihf-2.37 6.9MiB 1.9MiB/s 00:04 [##################] 100.0%
> gcc-cross-sans-libc-arm-linux-gnueabihf-10.3.0-lib 2.7MiB 2.6MiB/s 00:01 [##################] 100.0%
> glibc-cross-arm-linux-gnueabihf-2.33 18.0MiB 1.7MiB/s 00:11 [##################] 100.0%
> ld-wrapper-arm-linux-gnueabihf-0 13KiB 2.1MiB/s 00:00 [##################] 100.0%
> openssl-1.1.1m.tar.xz 7.1MiB 3.2MiB/s 00:02 [##################] 100.0%
> gcc-cross-sans-libc-arm-linux-gnueabihf-10.3.0 14.8MiB 4.0MiB/s 00:04 [##################] 100.0%
> /gnu/store/60x13abw5wr2yr1d0d6db2pspgbla1d0-linux-libre-headers-cross-arm-linux-gnueabihf-5.10.35.drv bouwen...
> | 'unpack' fase^C
What does "type -p guix" return? $HOME/.guix-profile/bin/guix or
/usr/{local/,}bin/guix or something else? What does "guix --version"
print?
Greetings,
Maxime
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
[not found] ` <26c6d942d8326be8a62b83a142ddf67993e76912.camel@platen-software.de>
@ 2022-02-05 17:31 ` Maxime Devos
0 siblings, 0 replies; 9+ messages in thread
From: Maxime Devos @ 2022-02-05 17:31 UTC (permalink / raw)
To: Tobias Platen; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 892 bytes --]
Tobias Platen schreef op za 05-02-2022 om 18:23 [+0100]:
> > What does "type -p guix" return? $HOME/.guix-profile/bin/guix or
> > /usr/{local/,}bin/guix or something else?
> /usr/local/bin/guix
Looks like an old version. I see two possibilities here:
* Set up .bash_profile and .profile like documented in the manual
and login again. For whatever reason, on my Debian system at
least, when I start a graphical session ~/.bash_profile and
~/.profile are ignored, so I have to do "bash --login" to start
a login shell to start doing up-to-date Guix stuff.
* If /usr/local/bin/guix is a symlink to
/var/guix/profiles/per-user/root/current-guix/bin/guix,
like on my Debian system, then updating root's guix
(sudo guix pull) should be sufficient -- it's a bit
unconventional and suboptimal but it should work.
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: cross compiling using qemu-user-static
2022-02-05 15:14 cross compiling using qemu-user-static Tobias Platen
` (2 preceding siblings ...)
2022-02-05 16:13 ` Maxime Devos
@ 2022-02-06 18:47 ` Tobias Platen
3 siblings, 0 replies; 9+ messages in thread
From: Tobias Platen @ 2022-02-06 18:47 UTC (permalink / raw)
To: guix-devel
is now fixed, I can now login from my laptop, and I also use two of my
laptops USB ports for both networking and charging the battery.
isengaara-openpandora:~$ uname -a
Linux isengaara-openpandora 3.2.57 #982 Sun Apr 20 20:33:11 EEST 2014
armv7l GNU/Linux
isengaara-openpandora:~$ ls /gnu/store/
01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-
lib k384n83b8l5bdwsa05prhlw3wsmak40p-openssh-8.5p1
0acliwmd1gpd1y67bbx7lpl4sqzka2y6-gcc-cross-arm-linux-gnueabihf-7.5.0-
lib kxb22znvi7jb3mmc596i33c3y3xsd4mh-ncurses-6.2
1v9ynmn33agz43np663l2bb9ck5n2i4l-linux-pam-
1.5.1 kz9r6h1dziyknbwgg6i5jpays5ggzf3c-profile
2dgh7v30fa85d515n2fghjjrsj56qnf5-linux-libre-headers-cross-arm-linux-
gnueabihf-5.4.20 mmhimfwmmidf09jw1plw3aw1g1zn2nkh-bash-static-5.0.16
3smqcfmicplwcrsbpqf7500i9hpkw8n7-glibc-cross-arm-linux-gnueabihf-
2.31 n0hnwyfvdrrwvg6dc0cbap74hjrazdcx-zlib-1.2.11
59rcg987542x54ryqypkvk68n32gkg82-openssl-
1.1.1k pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16
bcjcd97xvh0qkvq1maqj6qab88xb30dv-bash-static-
5.0.16 r0lvhigifp9acp6razf3r4ccbazpnvbq-libedit-20191231-3.1
bjjikcvyr6m5yiv6h21p3088wh92lv3a-info-
dir skjd1576693sppg33vp9nzlpmfvwqs3y-mit-krb5-1.18
fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-
2.31 x84gw65mhp1hz89b005k5g904pr1xp68-gcc-cross-sans-libc-arm-linux-gnueabihf-7.5.0-lib
gznjmd83vrqd5zdm7ryk998whvxf7la3-manual-
database zzkly5rbfvahwqgcs7crz0ilpi7x5g5p-ncurses-6.2
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2022-02-06 19:03 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-05 15:14 cross compiling using qemu-user-static Tobias Platen
2022-02-05 16:09 ` Maxime Devos
[not found] ` <c2b72e18bf99776b44b7ff0f1ea34edca9ff99f8.camel@platen-software.de>
2022-02-05 17:22 ` Maxime Devos
[not found] ` <26c6d942d8326be8a62b83a142ddf67993e76912.camel@platen-software.de>
2022-02-05 17:31 ` Maxime Devos
2022-02-05 17:26 ` Maxime Devos
2022-02-05 16:10 ` Maxime Devos
2022-02-05 16:13 ` Maxime Devos
[not found] ` <982bb7e3e8194968c29e9a56bdddd2bb1fc0bab7.camel@platen-software.de>
2022-02-05 17:14 ` Maxime Devos
2022-02-06 18:47 ` Tobias Platen
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).