mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-03-10 07:59:38 +00:00
Merge remote-tracking branch 'origin/trunk' into xry111/loongarch
This commit is contained in:
commit
ee8c846895
@ -63,11 +63,14 @@
|
||||
|
||||
<para>Now mount the remaining virtual kernel file systems:</para>
|
||||
|
||||
<screen><userinput>mount -v --bind /dev/pts $LFS/dev/pts
|
||||
<!-- Do not put any option after $LFS/${mountpoint} or jhalfs cannot
|
||||
handle it! -->
|
||||
|
||||
<screen><userinput>mount -vt devpts devpts -o gid=5,mode=0620 $LFS/dev/pts
|
||||
mount -vt proc proc $LFS/proc
|
||||
mount -vt sysfs sysfs $LFS/sys
|
||||
mount -vt tmpfs tmpfs $LFS/run</userinput></screen>
|
||||
<!--
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the mount options for devpts:</title>
|
||||
|
||||
@ -95,11 +98,12 @@ mount -vt tmpfs tmpfs $LFS/run</userinput></screen>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
-->
|
||||
|
||||
<para>In some host systems, <filename>/dev/shm</filename> is a
|
||||
symbolic link to <filename class="directory">/run/shm</filename>.
|
||||
symbolic link to a directory, typically
|
||||
<filename class="directory">/run/shm</filename>.
|
||||
The /run tmpfs was mounted above so in this case only a
|
||||
directory needs to be created.</para>
|
||||
directory needs to be created with the correct permissions.</para>
|
||||
|
||||
<para>In other host systems <filename>/dev/shm</filename> is a mount point
|
||||
for a tmpfs. In that case the mount of /dev above will only create
|
||||
@ -107,7 +111,7 @@ mount -vt tmpfs tmpfs $LFS/run</userinput></screen>
|
||||
we must explicitly mount a tmpfs:</para>
|
||||
|
||||
<screen><userinput>if [ -h $LFS/dev/shm ]; then
|
||||
(cd $LFS/dev; mkdir $(readlink shm))
|
||||
install -v -d -m 1777 $LFS$(realpath /dev/shm)
|
||||
else
|
||||
mount -vt tmpfs -o nosuid,nodev tmpfs $LFS/dev/shm
|
||||
fi</userinput></screen>
|
||||
|
@ -83,7 +83,7 @@
|
||||
<application>Expect</application> and run the tests as the <systemitem
|
||||
class="username">tester</systemitem> user:</para>
|
||||
|
||||
<screen><userinput remap="test">su -s /usr/bin/expect tester << EOF
|
||||
<screen><userinput remap="test">su -s /usr/bin/expect tester << "EOF"
|
||||
set timeout -1
|
||||
spawn make tests
|
||||
expect eof
|
||||
|
@ -48,6 +48,25 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Expect</title>
|
||||
|
||||
<para>Expect needs PTYs to work. Verify that the PTYs are working
|
||||
properly inside the chroot environment by performing a simple
|
||||
test:</para>
|
||||
|
||||
<screen><userinput remap="test">python3 -c 'from pty import spawn; spawn(["echo", "ok"])'</userinput></screen>
|
||||
|
||||
<para>This command should output <computeroutput>ok</computeroutput>.
|
||||
If, instead, the output includes <computeroutput>OSError: out of pty
|
||||
devices</computeroutput>, then the environment is not set up for proper
|
||||
PTY operation. You need to exit from the chroot environment, read
|
||||
<xref linkend='ch-tools-kernfs'/> again, and ensure the
|
||||
<systemitem class="filesystem">devpts</systemitem> file system (and
|
||||
other virtual kernel file systems) mounted correctly. Then reenter
|
||||
the chroot environment following <xref linkend='ch-tools-chroot'/>.
|
||||
This issue needs to be resolved before continuing, or the test suites
|
||||
requring Expect (for example the test suites of Bash, Binutils, GCC,
|
||||
GDBM, and of course Expect itself) will fail catastrophically, and other
|
||||
subtle breakages may also happen.</para>
|
||||
|
||||
&update-config-text;
|
||||
|
||||
<screen><userinput remap="pre">tar -C tclconfig &update-config-arg;</userinput></screen>
|
||||
@ -86,27 +105,10 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<important>
|
||||
<para>The test suite for Expect is considered critical.
|
||||
Do not skip it under any circumstances.</para>
|
||||
</important>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make test</userinput></screen>
|
||||
|
||||
<para>If any test fails with the message
|
||||
<computeroutput>The system has no more ptys. Ask your system
|
||||
administrator to create more</computeroutput>, it indicates
|
||||
you've not mounted the
|
||||
<systemitem class="filesystem">devpts</systemitem> file system
|
||||
correctly. You need to exit from the chroot environment, read
|
||||
<xref linkend='ch-tools-kernfs'/> again, and ensure the
|
||||
<systemitem class="filesystem">devpts</systemitem> file system (and
|
||||
other virtual kernel file systems) mounted correctly. Then reenter
|
||||
the chroot environment following <xref linkend='ch-tools-chroot'/>.
|
||||
This issue needs to be resolved before continuing.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install
|
||||
|
@ -309,10 +309,11 @@ install -vm755 dest/usr/lib/*.so.* /usr/lib</userinput></screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Then continue to run the <command>make install</command> command
|
||||
and the <command>sed</command> command against
|
||||
<filename>/usr/bin/ldd</filename>. Once they are finished, reboot
|
||||
the system immediately.
|
||||
Then continue to run the <command>make install</command> command,
|
||||
the <command>sed</command> command against
|
||||
<filename>/usr/bin/ldd</filename>, and the commands to install
|
||||
the locales. Once they are finished, reboot the system
|
||||
immediately.
|
||||
</para>
|
||||
</important>
|
||||
|
||||
|
@ -130,7 +130,7 @@ mounttype proc proc proc
|
||||
mounttype sys sysfs sysfs
|
||||
mounttype run tmpfs run
|
||||
if [ -h $LFS/dev/shm ]; then
|
||||
mkdir -pv $LFS/$(readlink $LFS/dev/shm)
|
||||
install -v -d -m 1777 $LFS$(realpath /dev/shm)
|
||||
else
|
||||
mounttype dev/shm tmpfs tmpfs -o nosuid,nodev
|
||||
fi
|
||||
|
@ -152,6 +152,7 @@ if ( $package == "tcl" ) $dirpath = "https://www.tcl.tk/software/tcltk/do
|
||||
if ( $package == "util-linux" ) $dirpath = max_parent( $dirpath, "v." );
|
||||
if ( $package == "vim" ) $dirpath = "https://github.com/vim/vim/tags";
|
||||
if ( $package == "wheel" ) $dirpath = "https://pypi.org/project/wheel/#files";
|
||||
if ( $package == "xz" ) $dirpath = github("tukaani-project/xz");
|
||||
if ( $package == "zlib" ) $dirpath = "https://www.zlib.net";
|
||||
if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user