On Thu, Mar 26, 2020 at 04:06:46PM +0100, Pierre Labastie via blfs-dev wrote:
> Le 26/03/2020 à 14:41, Ken Moffat via blfs-dev a écrit :
> > On Thu, Mar 26, 2020 at 11:40:59AM +0100, Pierre Labastie via
> > blfs-dev wrote:
> >> Le 23/03/2020 à 03:49, Bruce Dubbs via blfs-dev a écrit :
> >>> On 3/22/20 9:25 PM, Xi Ruoyao via blfs-dev wrote:
> >>>> On 2020-03-23 01:44 +0000, Ken Moffat via blfs-dev wrote:
> >>>>> On Mon, Mar 23, 2020 at 09:12:18AM +0800, Xi Ruoyao via
> >>>>> blfs-dev wrote:
> >>>>>> On 2020-03-22 21:34 +0000, Ken Moffat via blfs-dev wrote:
> >>>>>>
[...]
> > I'll reply in a while with what I have now tested (after I've
> > assembled my notes).  I've gone with Bruce's suggestion to (only)
> > mount a tmpfs on /run when building in chroot - I think xry111 has
> > identified the issue (bind mounts are not recursive).
> > 
> > Meanwhile, if you do not see that OSError when building any of firefox,
> > mozjs{60,68}, seamonkey, thunderbird *in chroot* then you are doing
> > something different.  This issue was raised in
> > http://lists.linuxfromscratch.org/pipermail/blfs-support/2020-March/081897.html

Replying to this before I post my test results, and before I've
ready xry111's latest post.

Since I wrote that, I actually read the Note in firefox about
ensuring that /dev/shm is mounted.  ISTR that you cannot mount
/dev/shm in LFS because it is a broken symlink to /run/shm.

Therefore, I think the /dev/shm part of the note is old and
no-longer correct.

> 
> The error reported by the OP ("This platform lacks a functioning sem_open
> implementation...") is the one I see when /dev/shm is not world writable, and
> the build is done as a regular user.

Note that I am NOT touching /dev/shm directly.

> When building as root, the error is different (something about an unknown 
> shell).
> 

In my tests I initially (mozjs60) made sure SHELL was exported.  As
you will see when I post the details, I ended up exiting from chroot
and unmounting /mnt/lfs after successfully completing the tests for
each package.  Later it occurred to me that I had not exported SHELL
while testign the subsequent packages (second package was seahorse).
So I started another test, and was surprised to see that SHELL was
still in my lfs user's enviromnet.  I had mounted /run (known to be
necessary), so I unset SHELL.  Configure again failed while creating
config.log, this time because it could not determine the shell - and
that was as a regular user.

> Those are the only errors I see. Note that chroot is entered with the
> following commands (Makefile syntax):
>       sudo mount -v --bind /dev $(MOUNT_PT)/dev; \
>         sudo mount -vt devpts devpts $(MOUNT_PT)/dev/pts -o gid=5,mode=620; \
>         sudo mount -vt proc proc $(MOUNT_PT)/proc; \
>         sudo mount -vt sysfs sysfs $(MOUNT_PT)/sys; \
>         sudo mount -vt tmpfs tmpfs $(MOUNT_PT)/run; \
>         if [ -h $(MOUNT_PT)/dev/shm ]; then :; \
>           sudo mkdir -pv $(MOUNT_PT)/$$(readlink $(MOUNT_PT)/dev/shm); \
>         fi;

Yeah, I can see that I have not been mounting /dev/shm when building
these packages in chroot (before these, I always boot the
LFS+essentials (git, nfs, etc) build to check it boots, and to
recalculate the SBU.
> 
> #Since on debian, /dev/shm is not a symlink, the last mkdir is not executed.
> 
> #Note that a tmpfs is mounted on /run.
> 
> # Then
> /usr/sbin/chroot $(MOUNT_PT) \
>                  /usr/bin/env -i \
>                  HOME=/root TERM="$$TERM" \
>                  PS1='(lfs chroot) \u:\w\$$ ' \
>                  PATH=/bin:/usr/bin:/sbin:/usr/sbin \
>                 /bin/bash --login
> (again Makefile syntax).
> 
> Do I understand correctly that you and xry111 suggest that a tmpfs be mounted
> on /dev/shm? Without any perm change? Let me try...

No, I'm following Bruce's suggestion to just mount a tmpfs on /run,
as root *inside_chroot*.

> Yesss:
> root [ / ]# ls -al /dev/shm
> total 0
> drwxrwxrwt  2 root root   40 Mar 26 15:59 .
> drwxr-xr-x 21 root root 3900 Mar 26 09:48 ..
> 
> I just added a line:
>         sudo mount -vt tmpfs tmpfs $(MOUNT_PT)/dev/shm; \
> 
> while still on host
> 
> Pierre

Interesting, there are clearly multiple workarounds.

ĸen
-- 
When alle is ſayed and all is done, ye must chooſe your faces wisely,
for soon enouff ye will be playing with fyre."
  The Nice and Accurate Prophecies of Agnes Nutter, Prophecy 5004
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to