* bug#21987: Version 0.9 Fails to Compile on Raspbian
@ 2015-11-22 22:41 Martin Vahi
2015-11-23 0:34 ` Thompson, David
2015-11-23 14:41 ` Ludovic Courtès
0 siblings, 2 replies; 13+ messages in thread
From: Martin Vahi @ 2015-11-22 22:41 UTC (permalink / raw)
To: bug-Guix
[-- Attachment #1: Type: text/plain, Size: 3953 bytes --]
An excerpt of the console output:
----citation--start-----
CXX nix/libstore/libstore_a-build.o
nix/libstore/build.cc: In member function 'void
nix::Worker::waitForInput()':
nix/libstore/build.cc:3332:74: warning: comparison between signed and
unsigned integer expressions [-Wsign-compare]
if (!waitingForAWhile.empty() && lastWokenUp +
settings.pollInterval <= after) {
^
CXX nix/libstore/libstore_a-pathlocks.o
CXX nix/libstore/libstore_a-derivations.o
AR libstore.a
CXX nix/nix-daemon/guix_daemon-nix-daemon.o
CXX nix/nix-daemon/guix_daemon-guix-daemon.o
CXXLD guix-daemon
CXX nix/guix-register/guix_register-guix-register.o
CXXLD guix-register
GUILEC guix/base32.go
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;; or pass the --no-auto-compile argument to disable.
;;; compiling /usr/bin/guild
;;; compiled /home/pi/.cache/guile/ccache/2.0-LE-4-2.0/usr/bin/guild.go
wrote `guix/base32.go'
GUILEC guix/base64.go
wrote `guix/base64.go'
GUILEC guix/cpio.go
wrote `guix/cpio.go'
GUILEC guix/records.go
wrote `guix/records.go'
GUILEC guix/gcrypt.go
wrote `guix/gcrypt.go'
GUILEC guix/hash.go
wrote `guix/hash.go'
GUILEC guix/pk-crypto.go
Backtrace:
In ice-9/boot-9.scm:
2401: 19 [save-module-excursion #<procedure 14675b8 at
ice-9/boot-9.scm:3066:17 ()>]
3085: 18 [#<procedure 14675b8 at ice-9/boot-9.scm:3066:17 ()>]
In unknown file:
?: 17 [primitive-load-path "guix/utils" ...]
In ice-9/eval.scm:
505: 16 [#<procedure 1174400 at ice-9/eval.scm:499:4 (exp)>
(define-module # # ...)]
In ice-9/psyntax.scm:
1106: 15 [expand-top-sequence ((define-module (guix utils) #:use-module
...)) () ...]
989: 14 [scan ((define-module (guix utils) #:use-module ...)) () ...]
279: 13 [scan ((#(syntax-object let # ...) (#) (# #) ...)) () ...]
In ice-9/eval.scm:
411: 12 [eval # ()]
In ice-9/boot-9.scm:
2951: 11 [define-module* (guix utils) #:filename ...]
2926: 10 [resolve-imports (((guix config)) ((srfi srfi-1)) ((srfi
srfi-9)) ...)]
2864: 9 [resolve-interface (guix build syscalls) #:select ...]
2789: 8 [#<procedure 11c92b0 at ice-9/boot-9.scm:2777:4 (name #:optional
autoload version #:key ensure)> # ...]
3065: 7 [try-module-autoload (guix build syscalls) #f]
2401: 6 [save-module-excursion #<procedure 188e798 at
ice-9/boot-9.scm:3066:17 ()>]
3085: 5 [#<procedure 188e798 at ice-9/boot-9.scm:3066:17 ()>]
In unknown file:
?: 4 [primitive-load-path "guix/build/syscalls" ...]
In ice-9/eval.scm:
453: 3 [eval # ()]
411: 2 [eval # #]
386: 1 [eval # #]
In ice-9/boot-9.scm:
106: 0 [#<procedure 13164c0 at ice-9/boot-9.scm:97:6 (thrown-k . args)>
match-error ...]
ice-9/boot-9.scm:106:20: In procedure #<procedure 13164c0 at
ice-9/boot-9.scm:97:6 (thrown-k . args)>:
ice-9/boot-9.scm:106:20: Throw to key `match-error' with args `("match"
"no matching pattern" "armv6l")'.
Makefile:4526: recipe for target 'guix/pk-crypto.go' failed
make[2]: *** [guix/pk-crypto.go] Error 1
make[2]: Leaving directory '/nix/mmmv_jama/GNU_Guix/guix-0.9.0'
Makefile:3688: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/nix/mmmv_jama/GNU_Guix/guix-0.9.0'
Makefile:2302: recipe for target 'all' failed
make: *** [all] Error 2
pi@raspberrypi /nix/mmmv_jama/GNU_Guix/guix-0.9.0 $ uname -a
Linux raspberrypi 4.1.7+ #817 PREEMPT Sat Sep 19 15:25:36 BST 2015
armv6l GNU/Linux
pi@raspberrypi /nix/mmmv_jama/GNU_Guix/guix-0.9.0 $ date
Sun Nov 22 15:03:12 UTC 2015
pi@raspberrypi /nix/mmmv_jama/GNU_Guix/guix-0.9.0 $ echo $CFLAGS
-mtune=native -ftree-vectorize
pi@raspberrypi /nix/mmmv_jama/GNU_Guix/guix-0.9.0 $ echo $CXXFLAGS
-mtune=native -ftree-vectorize
pi@raspberrypi /nix/mmmv_jama/GNU_Guix/guix-0.9.0 $
----citation--end-----
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-22 22:41 bug#21987: Version 0.9 Fails to Compile on Raspbian Martin Vahi
@ 2015-11-23 0:34 ` Thompson, David
2015-11-23 14:41 ` Ludovic Courtès
1 sibling, 0 replies; 13+ messages in thread
From: Thompson, David @ 2015-11-23 0:34 UTC (permalink / raw)
To: Martin Vahi; +Cc: bug-Guix
On Sun, Nov 22, 2015 at 5:41 PM, Martin Vahi <martin.vahi@softf1.com> wrote:
>
[snip]
> ice-9/boot-9.scm:106:20: In procedure #<procedure 13164c0 at
> ice-9/boot-9.scm:97:6 (thrown-k . args)>:
> ice-9/boot-9.scm:106:20: Throw to key `match-error' with args `("match"
> "no matching pattern" "armv6l")'.
The Raspberry Pi's processor uses an ARMv6 processor, but Guix only
supports ARMv7. Sorry!
- Dave
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-22 22:41 bug#21987: Version 0.9 Fails to Compile on Raspbian Martin Vahi
2015-11-23 0:34 ` Thompson, David
@ 2015-11-23 14:41 ` Ludovic Courtès
[not found] ` <56538E5A.60907@softf1.com>
1 sibling, 1 reply; 13+ messages in thread
From: Ludovic Courtès @ 2015-11-23 14:41 UTC (permalink / raw)
To: Martin Vahi; +Cc: 21987
Hello!
As David wrote, ARMv6 is not supported. However, ./configure should
detect that early.
Could you send us the output of:
grep host= config.log
?
Thanks for your report!
Ludo’.
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
[not found] ` <56538E5A.60907@softf1.com>
@ 2015-11-24 9:03 ` Ludovic Courtès
2015-11-25 2:49 ` Mark H Weaver
0 siblings, 1 reply; 13+ messages in thread
From: Ludovic Courtès @ 2015-11-24 9:03 UTC (permalink / raw)
To: Martin Vahi; +Cc: 21987
[-- Attachment #1: Type: text/plain, Size: 713 bytes --]
(Please keep 21987@debbugs.gnu.org Cc’d.)
Martin Vahi <martin.vahi@softf1.com> skribis:
> checking build system type... armv6l-unknown-linux-gnueabihf
> checking host system type... armv6l-unknown-linux-gnueabihf
[...]
> checking for the Guix system type... armhf-linux
This is the problem: ‘configure’ should bail out when it encounters
“armv6l”. I believe the patch below solves that.
The triplet we pass to ‘./configure --build’ starts with “arm-”
(computed from ‘nix-system->gnu-triplet’.) However, when running
config.guess outside of the Guix environment on hydra-slave1, I get
“armv7l”. So I think we have to allow both.
Mark?
Thanks,
Ludo’.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 761 bytes --]
diff --git a/m4/guix.m4 b/m4/guix.m4
index 842249a..4f586b6 100644
--- a/m4/guix.m4
+++ b/m4/guix.m4
@@ -51,7 +51,12 @@ AC_DEFUN([GUIX_SYSTEM_TYPE], [
machine_name="i686";;
amd64)
machine_name="x86_64";;
- arm*)
+ arm|armv7*)
+ # Here we want to exclude CPUs such as "armv6l". On ARMv7
+ # machines, we normally get "armv7l". However, in Guix, we
+ # configure with --build=arm-unknown-linux-gnueabihf, leading
+ # to just "arm", so we also have to allow it.
+ #
# TODO: If not cross-compiling, add a sanity check to make
# sure this build machine has the needed features to
# support executables compiled using our armhf gcc,
^ permalink raw reply related [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-24 9:03 ` Ludovic Courtès
@ 2015-11-25 2:49 ` Mark H Weaver
2015-11-25 16:02 ` Ludovic Courtès
0 siblings, 1 reply; 13+ messages in thread
From: Mark H Weaver @ 2015-11-25 2:49 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: Martin Vahi, 21987
ludo@gnu.org (Ludovic Courtès) writes:
> (Please keep 21987@debbugs.gnu.org Cc’d.)
>
> Martin Vahi <martin.vahi@softf1.com> skribis:
>
>> checking build system type... armv6l-unknown-linux-gnueabihf
>> checking host system type... armv6l-unknown-linux-gnueabihf
>
> [...]
>
>> checking for the Guix system type... armhf-linux
>
> This is the problem: ‘configure’ should bail out when it encounters
> “armv6l”. I believe the patch below solves that.
>
> The triplet we pass to ‘./configure --build’ starts with “arm-”
> (computed from ‘nix-system->gnu-triplet’.) However, when running
> config.guess outside of the Guix environment on hydra-slave1, I get
> “armv7l”. So I think we have to allow both.
>
> Mark?
We should allow arm8* as well, no? Actually armN* for N >= 7. Ideally,
we would test for the processor features we actually need.
Mark
> diff --git a/m4/guix.m4 b/m4/guix.m4
> index 842249a..4f586b6 100644
> --- a/m4/guix.m4
> +++ b/m4/guix.m4
> @@ -51,7 +51,12 @@ AC_DEFUN([GUIX_SYSTEM_TYPE], [
> machine_name="i686";;
> amd64)
> machine_name="x86_64";;
> - arm*)
> + arm|armv7*)
> + # Here we want to exclude CPUs such as "armv6l". On ARMv7
> + # machines, we normally get "armv7l". However, in Guix, we
> + # configure with --build=arm-unknown-linux-gnueabihf, leading
> + # to just "arm", so we also have to allow it.
> + #
> # TODO: If not cross-compiling, add a sanity check to make
> # sure this build machine has the needed features to
> # support executables compiled using our armhf gcc,
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-25 2:49 ` Mark H Weaver
@ 2015-11-25 16:02 ` Ludovic Courtès
2015-11-26 20:54 ` Efraim Flashner
2015-11-30 16:24 ` Andreas Enge
0 siblings, 2 replies; 13+ messages in thread
From: Ludovic Courtès @ 2015-11-25 16:02 UTC (permalink / raw)
To: Mark H Weaver; +Cc: Martin Vahi, 21987-done
Mark H Weaver <mhw@netris.org> skribis:
> We should allow arm8* as well, no? Actually armN* for N >= 7.
Right. I did that in 968ae90. We’ll revisit it when ARMv10 is out.
;-)
> Ideally, we would test for the processor features we actually need.
Yes. I’m not sure how to test each of them. Maybe GMP has something in
that vein?
Ludo’.
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-25 16:02 ` Ludovic Courtès
@ 2015-11-26 20:54 ` Efraim Flashner
2015-11-27 9:27 ` Ludovic Courtès
2015-11-30 16:24 ` Andreas Enge
1 sibling, 1 reply; 13+ messages in thread
From: Efraim Flashner @ 2015-11-26 20:54 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 21987-done
[-- Attachment #1: Type: text/plain, Size: 866 bytes --]
On Wed, 25 Nov 2015 17:02:46 +0100
ludo@gnu.org (Ludovic Courtès) wrote:
> Mark H Weaver <mhw@netris.org> skribis:
>
> > We should allow arm8* as well, no? Actually armN* for N >= 7.
>
> Right. I did that in 968ae90. We’ll revisit it when ARMv10 is out.
> ;-)
>
> > Ideally, we would test for the processor features we actually need.
>
> Yes. I’m not sure how to test each of them. Maybe GMP has something in
> that vein?
>
> Ludo’.
What processor flags specifically are we looking for?
From my Raspberry Pi 1:
ssh mypi cat /proc/cpuinfo | grep -m1 Features
Features : half thumb fastmult vfp edsp java tls
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-26 20:54 ` Efraim Flashner
@ 2015-11-27 9:27 ` Ludovic Courtès
0 siblings, 0 replies; 13+ messages in thread
From: Ludovic Courtès @ 2015-11-27 9:27 UTC (permalink / raw)
To: Efraim Flashner; +Cc: 21987-done
Efraim Flashner <efraim@flashner.co.il> skribis:
> What processor flags specifically are we looking for?
The details are given in guix.m4:
# TODO: If not cross-compiling, add a sanity check to make
# sure this build machine has the needed features to
# support executables compiled using our armhf gcc,
# configured with:
# --with-arch=armv7-a
# --with-float=hard
# --with-mode=thumb
# --with-fpu=vfpv3-d16
> From my Raspberry Pi 1:
> ssh mypi cat /proc/cpuinfo | grep -m1 Features
> Features : half thumb fastmult vfp edsp java tls
Sounds like this could work, though we need to check the exact flag
names for the features mentioned above.
On the Novena, we have:
model name : ARMv7 Processor rev 10 (v7l)
BogoMIPS : 166.00
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
Looks like checking for thumb, vfpv3, and (vpfd32|vfpd16) would do?
There doesn’t seem to be a more streamlined /sys interface to get these
flags, which is unfortunate.
Ludo’.
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-25 16:02 ` Ludovic Courtès
2015-11-26 20:54 ` Efraim Flashner
@ 2015-11-30 16:24 ` Andreas Enge
2015-11-30 17:43 ` Ludovic Courtès
1 sibling, 1 reply; 13+ messages in thread
From: Andreas Enge @ 2015-11-30 16:24 UTC (permalink / raw)
To: 21987, ludo, martin.vahi
On Wed, Nov 25, 2015 at 05:02:46PM +0100, Ludovic Courtès wrote:
> Mark H Weaver <mhw@netris.org> skribis:
> > We should allow arm8* as well, no? Actually armN* for N >= 7.
> Right. I did that in 968ae90. We’ll revisit it when ARMv10 is out.
Currently (commit 36f26211bbb2c4dffe33427d4e65d5225a586a5b), configure fails
on my novena with the following message:
checking for the Guix system type... armv7l-linux
configure: error: `armv7l-linux' is not a supported platform.
See "GNU Distribution" in the manual, or try `--with-courage'.
I suppose this is due to the commit above.
Andreas
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-30 16:24 ` Andreas Enge
@ 2015-11-30 17:43 ` Ludovic Courtès
2015-11-30 18:01 ` Andreas Enge
0 siblings, 1 reply; 13+ messages in thread
From: Ludovic Courtès @ 2015-11-30 17:43 UTC (permalink / raw)
To: Andreas Enge; +Cc: martin.vahi, 21987
Andreas Enge <andreas@enge.fr> skribis:
> On Wed, Nov 25, 2015 at 05:02:46PM +0100, Ludovic Courtès wrote:
>> Mark H Weaver <mhw@netris.org> skribis:
>> > We should allow arm8* as well, no? Actually armN* for N >= 7.
>> Right. I did that in 968ae90. We’ll revisit it when ARMv10 is out.
>
> Currently (commit 36f26211bbb2c4dffe33427d4e65d5225a586a5b), configure fails
> on my novena with the following message:
> checking for the Guix system type... armv7l-linux
> configure: error: `armv7l-linux' is not a supported platform.
Could you check the value of ‘host_cpu’ in config.log? The pattern use
in guix.m4 is supposed to allow ‘armv7l’.
TIA,
Ludo’.
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-30 17:43 ` Ludovic Courtès
@ 2015-11-30 18:01 ` Andreas Enge
2015-12-01 21:44 ` Ludovic Courtès
0 siblings, 1 reply; 13+ messages in thread
From: Andreas Enge @ 2015-11-30 18:01 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: martin.vahi, 21987
On Mon, Nov 30, 2015 at 06:43:37PM +0100, Ludovic Courtès wrote:
> Could you check the value of ‘host_cpu’ in config.log? The pattern use
> in guix.m4 is supposed to allow ‘armv7l’.
Yes, that is what surprises me also. An excerpt of config.log:
guix_system='armv7l-linux'
host='armv7l-unknown-linux-gnueabihf'
host_alias=''
host_cpu='armv7l'
host_os='linux-gnueabihf'
host_vendor='unknown'
Andreas
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-11-30 18:01 ` Andreas Enge
@ 2015-12-01 21:44 ` Ludovic Courtès
2015-12-02 9:19 ` Andreas Enge
0 siblings, 1 reply; 13+ messages in thread
From: Ludovic Courtès @ 2015-12-01 21:44 UTC (permalink / raw)
To: Andreas Enge; +Cc: martin.vahi, 21987
Andreas Enge <andreas@enge.fr> skribis:
> On Mon, Nov 30, 2015 at 06:43:37PM +0100, Ludovic Courtès wrote:
>> Could you check the value of ‘host_cpu’ in config.log? The pattern use
>> in guix.m4 is supposed to allow ‘armv7l’.
>
> Yes, that is what surprises me also. An excerpt of config.log:
>
> guix_system='armv7l-linux'
> host='armv7l-unknown-linux-gnueabihf'
> host_alias=''
> host_cpu='armv7l'
Fixed in dfdb15d (an M4 quotation issue…)
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 13+ messages in thread
* bug#21987: Version 0.9 Fails to Compile on Raspbian
2015-12-01 21:44 ` Ludovic Courtès
@ 2015-12-02 9:19 ` Andreas Enge
0 siblings, 0 replies; 13+ messages in thread
From: Andreas Enge @ 2015-12-02 9:19 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: martin.vahi, 21987
On Tue, Dec 01, 2015 at 10:44:10PM +0100, Ludovic Courtès wrote:
> Fixed in dfdb15d (an M4 quotation issue…)
Subtle, thanks for fixing it! It seems to work now.
Andreas
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2015-12-02 9:20 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-22 22:41 bug#21987: Version 0.9 Fails to Compile on Raspbian Martin Vahi
2015-11-23 0:34 ` Thompson, David
2015-11-23 14:41 ` Ludovic Courtès
[not found] ` <56538E5A.60907@softf1.com>
2015-11-24 9:03 ` Ludovic Courtès
2015-11-25 2:49 ` Mark H Weaver
2015-11-25 16:02 ` Ludovic Courtès
2015-11-26 20:54 ` Efraim Flashner
2015-11-27 9:27 ` Ludovic Courtès
2015-11-30 16:24 ` Andreas Enge
2015-11-30 17:43 ` Ludovic Courtès
2015-11-30 18:01 ` Andreas Enge
2015-12-01 21:44 ` Ludovic Courtès
2015-12-02 9:19 ` Andreas Enge
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).