On 7/4/19 2:54 PM, DJ Lucas via blfs-support wrote:
Or more specifically, my Python 2 is unable to run mach.
Creating config.status
Traceback (most recent call last):
File "../js/src/../../configure.py", line 127, in <module>
sys.exit(main(sys.argv))
File "../js/src/../../configure.py", line 34, in main
return config_status(config)
File "../js/src/../../configure.py", line 122, in config_status
return config_status(args=[], **encode(sanitized_config, encoding))
File
"/sources/mozjs-60.1.0/python/mozbuild/mozbuild/config_status.py", line
133, in config_status
reader = BuildReader(env)
File
"/sources/mozjs-60.1.0/python/mozbuild/mozbuild/frontend/reader.py",
line 868, in __init__
self._gyp_worker_pool = ProcessPoolExecutor(max_workers=max_workers)
File
"/sources/mozjs-60.1.0/third_party/python/futures/concurrent/futures/process.py",
line 285, in __init__
EXTRA_QUEUED_CALLS)
File "/usr/lib/python2.7/multiprocessing/__init__.py", line 217, in
Queue
from multiprocessing.queues import Queue
File "/sources/mozjs-60.1.0/build/mach_bootstrap.py", line 363, in
__call__
module = self._original_import(name, globals, locals, fromlist, level)
File "/usr/lib/python2.7/multiprocessing/queues.py", line 48, in
<module>
from .synchronize import Lock, BoundedSemaphore, Semaphore, Condition
File "/sources/mozjs-60.1.0/build/mach_bootstrap.py", line 363, in
__call__
module = self._original_import(name, globals, locals, fromlist, level)
File "/usr/lib/python2.7/multiprocessing/synchronize.py", line 59, in
<module>
" function, see issue 3770.")
ImportError: This platform lacks a functioning sem_open implementation,
therefore, the required synchronization primitives needed will not
function, see issue 3770.
After booting into the system, I was still unable to run mach.
Rebuilding Python2 from the real environment fixes the issue, but I'm
unsure as to why ATM. I do have both /run and /dev/shm bind mounted in
the chroot environment and have for years. This might even be the
problem as /dev/shm is a smylink now days, and it's easy enough to get
around, but was never a problem before very recently. I used to build in
chroot all the way to a full Gnome environment. I suppose it's too late
to go back and investigate at this point, but anybody else run across
this, or is it a me problem (likely my stone age chroot script)?
After LFS, I run mount-virt.sh (see below) before entering chroot.
OTOH, I reboot into the new environment after
Sun 30 Jun 11:21:20 CDT 2019 /usr/src/lsb-release/lsb-release-1.4.tar.gz
Sun 30 Jun 11:26:35 CDT 2019 /usr/src/sudo/sudo-1.8.27.tar.gz
Sun 30 Jun 2019 11:28:09 AM CDT /usr/src/openssh/openssh-8.0p1.tar.gz
Sun 30 Jun 2019 12:19:47 PM CDT /usr/src/gpm/gpm-1.20.7.tar.bz2
Sun 30 Jun 2019 12:21:10 PM CDT /usr/src/haveged/haveged-1.9.2.tar.gz
Sun 30 Jun 2019 12:22:16 PM CDT /usr/src/libtirpc/libtirpc-1.1.4.tar.bz2
Sun 30 Jun 2019 12:23:21 PM CDT
/usr/src/rpcsvc-proto/rpcsvc-proto-1.4.tar.gz
Sun 30 Jun 2019 12:24:18 PM CDT /usr/src/rpcbind/rpcbind-1.2.5.tar.bz2
Sun 30 Jun 2019 12:27:14 PM CDT /usr/src/nfs-utils/nfs-utils-2.4.1.tar.xz
and continue via ssh.
-- Bruce
$ cat mount-virt.sh
#!/bin/bash
function mountbind
{
if ! mountpoint $LFS/$1 >/dev/null; then
$SUDO mount --bind /$1 $LFS/$1
echo $LFS/$1 mounted
else
echo $LFS/$1 already mounted
fi
}
function mounttype
{
if ! mountpoint $LFS/$1 >/dev/null; then
$SUDO mount -t $2 $3 $4 $5 $LFS/$1
echo $LFS/$1 mounted
else
echo $LFS/$1 already mounted
fi
}
if [ $EUID -ne 0 ]; then
SUDO=sudo
else
SUDO=""
fi
if [ x$LFS == x ]; then
echo "LFS not set"
exit 1
fi
mountbind dev
mounttype dev/pts devpts devpts -o gid=5,mode=620
mounttype proc proc proc
mounttype sys sysfs sysfs
mounttype run tmpfs run
mkdir $LFS/run/shm
mountbind usr/src
mountbind boot
mountbind home
--
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page