all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Carl Dong <contact@carldong.me>
To: 45165@debbugs.gnu.org
Subject: bug#45165: binutils-mesboot0 fails at configure, cannot find lex
Date: Wed, 16 Dec 2020 12:49:45 -0500	[thread overview]
Message-ID: <F0D8AC89-B52F-49B1-A0D3-A76F17635A84@carldong.me> (raw)
In-Reply-To: <1CB66010-F81E-447B-9715-B1A79415EAA6@carldong.me>

More clues:

I ran the following one-liner:

for i in $(seq 0 65535); do sudo chown $i:$i /tmp/guix-build-binutils-mesboot0-2.14.drv-0/binutils-2.14/config.cache && /gnu/store/m89p469fxwn4hj7an9givd1ry9vk7j2l-bash-mesboot0-2.05b/bin/sh -c "test -w /tmp/guix-build-binutils-mesboot0-2.14.drv-0/binutils-2.14/config.cache" && echo "Winner: $i" && break; done

This is designed to iterate through all possible uid values, chown the config.cache file, and test if that uid makes the “test” builtin think that it is writable. If there is one, it’ll print “Winner: <uid>” and exit

The result: Nothing was printed and the exit status was 1

Not sure where to go from here.

Cheers,
Carl Dong

> On Dec 15, 2020, at 7:46 PM, Carl Dong <contact@carldong.me> wrote:
> 
> Hi all,
> 
> I think I have a new lead!
> 
> Here’s what I did:
> 1. cd /tmp/guix-build-binutils-mesboot0-2.14.drv-0/binutils-2.14
> 2. env -i bash --rcfile environment-variables
> 3. Ran the configure command from the log, just to check:
> 	./configure --disable-nls --disable-shared --disable-werror --build=i386-unknown-linux --host=i386-unknown-linux --target=i386-unknown-linux --with-sysroot=/ --prefix=/gnu/store/jfa9b78rdniyw7qilsmw3bh02x8x68ly-binutils-mesboot0-2.14
> 
> Indeed it did still output "not updating unwritable cache ./config.cache”
> 
> However, when I tried `test -w config.cache`, there was no status code…
> 
> This led me to look at ./configure’s shebang, which is:
> 	/gnu/store/m89p469fxwn4hj7an9givd1ry9vk7j2l-bash-mesboot0-2.05b/bin/sh
> 
> Then I did:
> 	/gnu/store/m89p469fxwn4hj7an9givd1ry9vk7j2l-bash-mesboot0-2.05b/bin/sh -c "test -w config.cache”
> 
> Which _did_ exit with status=1 !
> 
> So I believe that this is a problem with the “test” builtin in /gnu/store/m89p469fxwn4hj7an9givd1ry9vk7j2l-bash-mesboot0-2.05b
> 
> So I ran:
> 	env -i bash --rcfile environment-variables -c 'strace -v -e trace=file /gnu/store/m89p469fxwn4hj7an9givd1ry 9vk7j2l-bash-mesboot0-2.05b/bin/sh -c "test -w config.cache”'
> 
> And the output:
> execve("/gnu/store/m89p469fxwn4hj7an9givd1ry9vk7j2l-bash-mesboot0-2.05b/bin/sh", ["/gnu/store/m89p469fxwn4hj7an9giv"..., "-c", "test -w config.cache"], ["PWD=/tmp/guix-build-binutils-mes"..., "SHLVL=0", "_=/usr/bin/strace"]) = 0
> [ Process PID=2049037 runs in 32 bit mode. ]
> open("/dev/tty", O_RDWR)                = 3
> stat("/tmp/guix-build-binutils-mesboot0-2.14.drv-0", {st_dev=makedev(0, 0x2f), st_ino=2546749, st_mode=S_IFDIR|0755, st_nlink=3, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=0, st_size=80, st_atime=1608079054 /* 2020-12-15T19:37:34.095396729-0500 */, st_atime_nsec=95396729, st_mtime=1607635957 /* 2020-12-10T16:32:37.842047431-0500 */, st_mtime_nsec=842047431, st_ctime=1607636165 /* 2020-12-10T16:36:05.793930344-0500 */, st_ctime_nsec=793930344}) = 0
> stat(".", {st_dev=makedev(0, 0x2f), st_ino=2546749, st_mode=S_IFDIR|0755, st_nlink=3, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=0, st_size=80, st_atime=1608079054 /* 2020-12-15T19:37:34.095396729-0500 */, st_atime_nsec=95396729, st_mtime=1607635957 /* 2020-12-10T16:32:37.842047431-0500 */, st_mtime_nsec=842047431, st_ctime=1607636165 /* 2020-12-10T16:36:05.793930344-0500 */, st_ctime_nsec=793930344}) = 0
> stat("config.cache", 0xfff9affc)        = -1 ENOENT (No such file or directory)
> +++ exited with 1 +++
> 
> I had a hunch that the mode is most likely the problem. So I tried the following:
> 
> chmod 664 config.cache -> status is still 1
> chmod 646 config.cache -> status is now 0!!
> 
> So somehow the “test” builtin for my bash-mesboot0 doesn’t think that it has owner or group permissions to write to a file that itself created?
> 
> Let me know what you guys think could be the case!
> 
> Cheers,
> Carl Dong
> 
> 





  reply	other threads:[~2020-12-16 17:49 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-10 20:01 bug#45165: binutils-mesboot0 fails at configure, cannot find lex Carl Dong
2020-12-10 22:28 ` Carl Dong
2020-12-11  6:33   ` Jan Nieuwenhuizen
2020-12-11 16:37     ` Carl Dong
2020-12-15 18:50       ` Carl Dong
2020-12-16  0:46         ` Carl Dong
2020-12-16 17:49           ` Carl Dong [this message]
2020-12-22 14:33           ` Ludovic Courtès
2020-12-22 16:42             ` Carl Dong
2021-01-18 22:48             ` Carl Dong
2021-01-19 23:03               ` Carl Dong
2021-02-03 19:18                 ` Carl Dong
2021-02-06 21:04                   ` Ludovic Courtès
2020-12-25 15:57 ` Tom Hiller
2021-02-27 10:33 ` Vincent Legoll
2021-06-09 13:36 ` kitzman via Bug reports for GNU Guix
2021-06-09 15:12   ` kitzman via Bug reports for GNU Guix
2021-12-24  5:58 ` Tobias Geerinckx-Rice via Bug reports for GNU Guix
2021-12-24  8:11   ` Tobias Geerinckx-Rice via Bug reports for GNU Guix
2022-02-24 13:09     ` kitzman via Bug reports for GNU Guix

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=F0D8AC89-B52F-49B1-A0D3-A76F17635A84@carldong.me \
    --to=contact@carldong.me \
    --cc=45165@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.