GNU bug report logs -
#23376
Bootstrap failure on'binutils-cross-boot0-2.25.1: cannot find -lstdc++
Previous Next
Reported by: Roel Janssen <roel <at> gnu.org>
Date: Mon, 25 Apr 2016 22:05:02 UTC
Severity: normal
Tags: notabug
Done: ludo <at> gnu.org (Ludovic Courtès)
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 23376 in the body.
You can then email your comments to 23376 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#23376
; Package
guix
.
(Mon, 25 Apr 2016 22:05:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Roel Janssen <roel <at> gnu.org>
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Mon, 25 Apr 2016 22:05:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[bootstrap-tarballs-tail.txt (text/plain, attachment)]
[Message part 2 (text/plain, inline)]
Dear Guix,
In an attempt to bootstrap Guix, I repeatedly encounter the same error.
I attached the last 5000 lines of the build output of the command:
guix build bootstrap-tarballs
When running the daemon, I used the following environment variables:
NIX_STORE_DIR=/hpc/store
NIX_CONF_DIR=/hpc/etc/guix
NIX_STATE_DIR=/hpc/var/guix
NIX_LOG_DIR=/hpc/log
The same environment variables (and values) were set when running the
guix build command.
What am I doing that causes the build to fail?
Kind regards,
Roel Janssen
Information forwarded
to
bug-guix <at> gnu.org
:
bug#23376
; Package
guix
.
(Tue, 03 May 2016 20:22:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 23376 <at> debbugs.gnu.org (full text, mbox):
Roel Janssen <roel <at> gnu.org> skribis:
> In an attempt to bootstrap Guix, I repeatedly encounter the same error.
> I attached the last 5000 lines of the build output of the command:
> guix build bootstrap-tarballs
>
> When running the daemon, I used the following environment variables:
> NIX_STORE_DIR=/hpc/store
> NIX_CONF_DIR=/hpc/etc/guix
> NIX_STATE_DIR=/hpc/var/guix
> NIX_LOG_DIR=/hpc/log
And TMPDIR?
(For recent versions of guix-daemon, TMPDIR has no effect on the build
chroot. I assume this uses a recent guix-daemon.)
Note that these environment variables are undocumented; use at your own
risks. :-)
> The same environment variables (and values) were set when running the
> guix build command.
>
> What am I doing that causes the build to fail?
Did you pass the --disable-chroot or --chroot-directory options of
guix-daemon?
The log you sent suggests a failure to build (@@ (gnu packages
commencement) gcc-final) because the directory is called “gcc-4.9.3”,
not “gcc-cross-boot0-4.9.3”. However, it also shows that
binutils-cross-boot0 is used, which is not the case for ‘gcc-final’.
What Guix commit are you using? Could you identify more precisely
what’s failing to build? For instance, you can run:
guix build -e '(@@ (gnu packages commencement) gcc-boot0)'
guix build -e '(@@ (gnu packages commencement) gcc-final)'
Thanks in advance,
Ludo’.
Information forwarded
to
bug-guix <at> gnu.org
:
bug#23376
; Package
guix
.
(Wed, 04 May 2016 08:09:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 23376 <at> debbugs.gnu.org (full text, mbox):
[build-gcc-boot0.log (text/plain, attachment)]
[build-gcc-final.log.gz (application/gzip, attachment)]
[guix-userspace.patch (text/x-patch, attachment)]
[Message part 4 (text/plain, inline)]
Ludovic Courtès writes:
> Roel Janssen <roel <at> gnu.org> skribis:
>
>> In an attempt to bootstrap Guix, I repeatedly encounter the same error.
>> I attached the last 5000 lines of the build output of the command:
>> guix build bootstrap-tarballs
>>
>> When running the daemon, I used the following environment variables:
>> NIX_STORE_DIR=/hpc/store
>> NIX_CONF_DIR=/hpc/etc/guix
>> NIX_STATE_DIR=/hpc/var/guix
>> NIX_LOG_DIR=/hpc/log
>
> And TMPDIR?
I didn't set TMPDIR. Should I do that?
> (For recent versions of guix-daemon, TMPDIR has no effect on the build
> chroot. I assume this uses a recent guix-daemon.)
Checkout out and compiled at the day I submitted the bug report.
> Note that these environment variables are undocumented; use at your own
> risks. :-)
Ha! I found them in the code for the guix-daemon. Unrelated to this
bugreport, but don't you think we should rename these to GUIX_*
equivalent environment variables?
>> The same environment variables (and values) were set when running the
>> guix build command.
>>
>> What am I doing that causes the build to fail?
>
> Did you pass the --disable-chroot or --chroot-directory options of
> guix-daemon?
No, but I have made some modifications to the code to make it run
completely in userspace. The code should effectively disable chrooting
(unfortunately).
I attached a patch displaying the differences between the version I used
and commit 85f0945.
> The log you sent suggests a failure to build (@@ (gnu packages
> commencement) gcc-final) because the directory is called “gcc-4.9.3”,
> not “gcc-cross-boot0-4.9.3”. However, it also shows that
> binutils-cross-boot0 is used, which is not the case for ‘gcc-final’.
>
> What Guix commit are you using?
I'm using commit 85f09459162d12e7ce7874995ae2837164ed17ee (with the
modifications in my patch).
> Could you identify more precisely what’s failing to build? For
> instance, you can run:
>
> guix build -e '(@@ (gnu packages commencement) gcc-boot0)'
> guix build -e '(@@ (gnu packages commencement) gcc-final)'
It seems the problem arises when building gcc-final. I attached the
complete output of both commands. Because the output for gcc-final is
rather large, I compressed it.
Thanks for your time!
Kind regards,
Roel Janssen
Information forwarded
to
bug-guix <at> gnu.org
:
bug#23376
; Package
guix
.
(Thu, 05 May 2016 15:42:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 23376 <at> debbugs.gnu.org (full text, mbox):
Roel Janssen <roel <at> gnu.org> skribis:
> Ludovic Courtès writes:
>
>> Roel Janssen <roel <at> gnu.org> skribis:
>>
>>> In an attempt to bootstrap Guix, I repeatedly encounter the same error.
>>> I attached the last 5000 lines of the build output of the command:
>>> guix build bootstrap-tarballs
>>>
>>> When running the daemon, I used the following environment variables:
>>> NIX_STORE_DIR=/hpc/store
>>> NIX_CONF_DIR=/hpc/etc/guix
>>> NIX_STATE_DIR=/hpc/var/guix
>>> NIX_LOG_DIR=/hpc/log
>>
>> And TMPDIR?
>
> I didn't set TMPDIR. Should I do that?
No, just wanted to make sure.
>> Note that these environment variables are undocumented; use at your own
>> risks. :-)
>
> Ha! I found them in the code for the guix-daemon. Unrelated to this
> bugreport, but don't you think we should rename these to GUIX_*
> equivalent environment variables?
Yes we should: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22459>.
>>> The same environment variables (and values) were set when running the
>>> guix build command.
>>>
>>> What am I doing that causes the build to fail?
>>
>> Did you pass the --disable-chroot or --chroot-directory options of
>> guix-daemon?
>
> No, but I have made some modifications to the code to make it run
> completely in userspace.
“User space” is usually taken to mean something else:
<https://en.wikipedia.org/wiki/User-space>. I think you mean running
guix-daemon as an unprivileged user, right?
> The code should effectively disable chrooting (unfortunately).
The patch is roughly equivalent to --disable-chroot, right?
Then I’m afraid this voids your warranty. :-)
This “Build Environment Setup” section mentions it.
Most likely something somewhere stealthily picks up /usr/bin/ld,
/usr/bin/libstdc++.so, or something along these lines. It’s very hard
to tell what. One way to search for the culprit would be “grep -r /usr”
in the GCC source tree.
But it could be something else; for instance our bootstrap libc might
honor /etc/ld.so.{conf,cache}, which can break everything (this can be
checked with ‘strace’.)
It would be interesting to know. It wouldn’t be enough to fix this use
case though; that would require Linux user name spaces (what ‘guix
environment --container’ uses.)
Ludo’.
Added tag(s) notabug.
Request was from
ludo <at> gnu.org (Ludovic Courtès)
to
control <at> debbugs.gnu.org
.
(Tue, 02 Aug 2016 22:36:02 GMT)
Full text and
rfc822 format available.
bug closed, send any further explanations to
23376 <at> debbugs.gnu.org and Roel Janssen <roel <at> gnu.org>
Request was from
ludo <at> gnu.org (Ludovic Courtès)
to
control <at> debbugs.gnu.org
.
(Tue, 02 Aug 2016 22:36:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 31 Aug 2016 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 8 years and 351 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.