Changeset 2df066c9 for chapter08


Ignore:
Timestamp:
09/15/2023 10:54:55 AM (10 months ago)
Author:
Xi Ruoyao <xry111@…>
Branches:
xry111/clfs-ng
Children:
7546d8b
Parents:
d58da4b (diff), ba40e32 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng

Location:
chapter08
Files:
31 edited

Legend:

Unmodified
Added
Removed
  • chapter08/autoconf.xml

    rd58da4b r2df066c9  
    154154          software package; it examines the source files in a directory tree,
    155155          searching them for common portability issues, and creates a
    156           <filename>configure.scan</filename> file that serves as as a
     156          <filename>configure.scan</filename> file that serves as a
    157157          preliminary <filename>configure.in</filename> file for the
    158158          package</para>
  • chapter08/binutils.xml

    rd58da4b r2df066c9  
    146146    <option>--enable-default-ssp</option> options are passed to GCC.</para>
    147147
     148    <para>Three tests in the gprofng suite are also known to fail.</para>
     149
    148150    <para>Install the package:</para>
    149151
    150152<screen><userinput remap="install">make tooldir=/usr install</userinput></screen>
    151153
    152     <para>Remove useless static libraries and an empty man page:</para>
    153 
    154 <screen><userinput remap="install">rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,sframe,opcodes}.a
    155 rm -fv /usr/share/man/man1/{gprofng,gp-*}.1</userinput></screen>
     154    <para>Remove useless static libraries:</para>
     155
     156<screen><userinput remap="install">rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,gprofng,opcodes,sframe}.a</userinput></screen>
    156157
    157158  </sect2>
     
    168169        <seg>addr2line, ar, as, c++filt, dwp, elfedit, gprof, gprofng, ld, ld.bfd, ld.gold, nm,
    169170        objcopy, objdump, ranlib, readelf, size, strings, and strip</seg>
    170         <seg>libbfd.so, libctf.so, libctf-nobfd.so, libopcodes.so, and libsframe.so</seg>
     171        <seg>libbfd.so, libctf.so, libctf-nobfd.so, libgprofng.so,
     172        libopcodes.so, and libsframe.so</seg>
    171173        <seg>/usr/lib/ldscripts</seg>
    172174      </seglistitem>
     
    416418      </varlistentry>
    417419
     420      <varlistentry id="libgprofng">
     421        <term><filename class="libraryfile">libgprofng</filename></term>
     422        <listitem>
     423          <para>A library containing most routines used by
     424          <command>gprofng</command></para>
     425          <indexterm zone="ch-system-binutils libgprofng">
     426            <primary sortas="c-libgprofng">libgprofng</primary>
     427          </indexterm>
     428        </listitem>
     429      </varlistentry>
     430
    418431      <varlistentry id="libopcodes">
    419432        <term><filename class="libraryfile">libopcodes</filename></term>
  • chapter08/chapter08.xml

    rd58da4b r2df066c9  
    3030  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="expect.xml"/>
    3131  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dejagnu.xml"/>
     32  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pkgconf.xml"/>
    3233  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="binutils.xml"/>
    3334  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gmp.xml"/>
     
    4041  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="shadow.xml"/>
    4142  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gcc.xml"/>
    42   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pkgconf.xml"/>
    4343  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ncurses.xml"/>
    4444  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="sed.xml"/>
  • chapter08/coreutils.xml

    rd58da4b r2df066c9  
    122122    user <systemitem class="username">tester</systemitem> a part of it:</para>
    123123
    124 <screen><userinput remap="test">echo "dummy:x:102:tester" &gt;&gt; /etc/group</userinput></screen>
     124<screen><userinput remap="test">groupadd -g 102 dummy -U tester</userinput></screen>
    125125
    126126    <para>Fix some of the permissions so that the non-&root; user can
     
    140140    <para>Remove the temporary group:</para>
    141141
    142 <screen><userinput remap="test">sed -i '/dummy/d' /etc/group</userinput></screen>
     142<screen><userinput remap="test">groupdel dummy</userinput></screen>
     143
    143144    <para>Install the package:</para>
    144145
  • chapter08/dbus.xml

    rd58da4b r2df066c9  
    5353            --localstatedir=/var                 \
    5454            --runstatedir=/run                   \
     55            --enable-user-session                \
    5556            --disable-static                     \
    5657            --disable-doxygen-docs               \
     
    7172          to be in <filename class="directory">/run</filename>, instead of
    7273          the deprecated <filename class="directory">/var/run</filename>.</para>
     74        </listitem>
     75      </varlistentry>
     76
     77      <varlistentry>
     78        <term>
     79          <parameter>--enable-user-session</parameter>
     80        </term>
     81        <listitem>
     82          <para>This ensures the D-Bus per-user service and socket unit
     83          files are installed for Systemd.  They are not useful (but
     84          harmless) in a base LFS installation, however they can be used
     85          once systemd is rebuilt with PAM support in BLFS.</para>
    7386        </listitem>
    7487      </varlistentry>
  • chapter08/flit-core.xml

    rd58da4b r2df066c9  
    4343    <para>Build the package:</para>
    4444
    45 <screen><userinput remap="install">pip3 wheel -w dist --no-build-isolation --no-deps $PWD</userinput></screen>
     45<screen><userinput remap="install">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
    4646
    4747    <para>Install the package:</para>
     
    6464           <para>Instructs pip to put the created wheel into the
    6565           <filename class='directory'>dist</filename> directory.</para>
     66        </listitem>
     67      </varlistentry>
     68
     69      <varlistentry>
     70        <term><parameter>--no-cache-dir</parameter></term>
     71        <listitem>
     72          <para>Prevents pip from copying the created wheel into the
     73          <filename class='directory'>/root/.cache/pip</filename>
     74          directory.</para>
    6675        </listitem>
    6776      </varlistentry>
  • chapter08/gawk.xml

    rd58da4b r2df066c9  
    6262<screen><userinput remap="install">make LN='ln -f' install</userinput></screen>
    6363
    64     <para>The installation process already created <command>awk</command>
    65     as a symlink to <command>gawk</command>, create its man page as a
    66     symlink as well:</para>
    67 
    68 <screen><userinput remap="install">ln -sv gawk.1 /usr/share/man/man1/awk.1</userinput></screen>
    69 
    7064    <variablelist>
    7165      <title>The meaning of the overridden make variable:</title>
     
    7973      </varlistentry>
    8074   </variablelist>
     75
     76    <para>The installation process already created <command>awk</command>
     77    as a symlink to <command>gawk</command>, create its man page as a
     78    symlink as well:</para>
     79
     80<screen><userinput remap="install">ln -sv gawk.1 /usr/share/man/man1/awk.1</userinput></screen>
    8181
    8282    <para>If desired, install the documentation:</para>
  • chapter08/gcc.xml

    rd58da4b r2df066c9  
    172172    <ulink url="https://gcc.gnu.org/ml/gcc-testresults/"/>.</para>
    173173
    174     <para>Two tests named <filename>pr104610.c</filename> and
     174 <para><!--Two tests named <filename>pr104610.c</filename> and
    175175    <filename>pr69482-1.c</filename> are known to fail because the test
    176176    files does not account for the
    177     <parameter>--enable-default-ssp</parameter> option.
     177    <parameter>- -enable-default-ssp</parameter> option.-->
    178178    <!-- https://gcc.gnu.org/PR106375 and https://gcc.gnu.org/PR109353 -->
    179179    Two tests named <filename>copy.cc</filename> and
     
    183183    <filename class='directory'>vect</filename> directory are known to fail
    184184    if the hardware does not support AVX.</para>
     185
     186    <para>
     187      With Glibc-2.38, the analyzer tests named
     188      <filename>data-model-4.c</filename> and
     189      <filename>conftest-1.c</filename>
     190        are known to fail.
     191      In the asan tests, several tests in <filename>asan_test.C</filename>
     192        are known to fail.
     193      The test named <filename>interception-malloc-test-1.C</filename>
     194        is known to fail.
     195    </para>
    185196
    186197    <para>A few unexpected failures cannot always be avoided. The GCC developers
  • chapter08/glibc.xml

    rd58da4b r2df066c9  
    5151<screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen>
    5252
    53     <!-- https://sourceware.org/bugzilla/show_bug.cgi?id=30068
    54          Upstream fix also added a test case and renamed "prec" to
    55          "prec_inc".  We'll test this with MPFR test suite so we don't
    56          need the test here, and the renaming does not affect program
    57          behavior.  -->
    58     <para>Fix a security issue identified upstream:</para>
    59 
    60 <screen><userinput remap="pre">sed '/width -=/s/workend - string/number_length/' \
    61     -i stdio-common/vfprintf-process-arg.c</userinput></screen>
     53    <para>Now fix two security vulnerabilities and a regression causing the
     54    posix_memalign() function very slow in some conditions:</para>
     55
     56<screen><userinput remap="pre">patch -Np1 -i ../&glibc-upstream-fixes-patch;</userinput></screen>
    6257
    6358    <para>The Glibc documentation recommends building Glibc
     
    8075             --enable-stack-protector=strong          \
    8176             --with-headers=/usr/include              \
    82              --disable-crypt                          \
    8377             libc_cv_slibdir=/usr/lib</userinput></screen>
    8478
     
    168162      </listitem>
    169163
     164<!-- Did not fail with glibc-2.38
    170165      <listitem>
    171166        <para><emphasis>misc/tst-ttyname</emphasis>
    172167        is known to fail in the LFS chroot environment.</para>
    173168      </listitem>
     169-->
    174170
    175171      <!-- https://sourceware.org/pipermail/libc-alpha/2022-August/141567.html -->
     
    326322    following:</para>
    327323
    328 <screen><userinput>cat &gt; /etc/nsswitch.conf &lt;&lt; "EOF"
     324<screen revision='sysv'><userinput>cat &gt; /etc/nsswitch.conf &lt;&lt; "EOF"
    329325<literal># Begin /etc/nsswitch.conf
    330326
     
    334330
    335331hosts: files dns
     332networks: files
     333
     334protocols: files
     335services: files
     336ethers: files
     337rpc: files
     338
     339# End /etc/nsswitch.conf</literal>
     340EOF</userinput></screen>
     341
     342<screen revision='systemd'><userinput>cat &gt; /etc/nsswitch.conf &lt;&lt; "EOF"
     343<literal># Begin /etc/nsswitch.conf
     344
     345passwd: files systemd
     346group: files systemd
     347shadow: files systemd
     348
     349hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns
    336350networks: files
    337351
  • chapter08/gmp.xml

    rd58da4b r2df066c9  
    5555      the host processor.  If libraries suitable for processors less
    5656      capable than the host's CPU are desired, generic libraries can be
    57       created by running the following:
     57      created by appending the <option>--host=none-linux-gnu</option> option
     58      to the <command>configure</command> command.</para>
    5859
    59 <screen role="nodump"><userinput>cp -v configfsf.guess config.guess
    60 cp -v configfsf.sub   config.sub</userinput></screen></para>
     60      <!-- To editors: the configure script says "the none host is obsolete,
     61           use - -disable-assembly", but don't believe it: with the latter
     62           CFLAGS is still automatically set to -march=something.  -->
    6163    </note>
    6264
     
    107109    applications using the gmp libraries with the message "Illegal
    108110    instruction".  In this case, gmp should be reconfigured with the option
    109     --build=x86_64-pc-linux-gnu and rebuilt.</para></caution>
     111    <option>--host=none-linux-gnu</option> and rebuilt.</para></caution>
    110112
    111     <para>Ensure that all 197 tests in the test suite passed.
     113    <!-- Some tests PASS on a specific uarch but SKIP on other CPUs.
     114         For example on K8 the following command outputs 200.  -->
     115    <para>Ensure that at least 199 tests in the test suite passed.
    112116    Check the results by issuing the following command:</para>
    113117
     
    125129
    126130    <segmentedlist>
    127       <segtitle>Installed Libraries</segtitle>
     131      <segtitle>Installed libraries</segtitle>
    128132      <segtitle>Installed directory</segtitle>
    129133
  • chapter08/jinja2.xml

    rd58da4b r2df066c9  
    4343    <para>Build the package:</para>
    4444
    45 <screen><userinput remap="install">pip3 wheel -w dist --no-build-isolation --no-deps $PWD</userinput></screen>
     45<screen><userinput remap="install">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
    4646
    4747    <para>Install the package:</para>
  • chapter08/less.xml

    rd58da4b r2df066c9  
    6363<screen><userinput remap="make">make</userinput></screen>
    6464
    65     <para>This package does not come with a test suite.</para>
     65    <para>To test the results, issue:</para>
     66
     67<screen><userinput remap="test">make check</userinput></screen>
    6668
    6769    <para>Install the package:</para>
  • chapter08/libelf.xml

    rd58da4b r2df066c9  
    7171
    7272    <segmentedlist>
    73       <segtitle>Installed Library</segtitle>
    74       <segtitle>Installed Directory</segtitle>
     73      <segtitle>Installed library</segtitle>
     74      <segtitle>Installed directory</segtitle>
    7575
    7676      <seglistitem>
  • chapter08/libxcrypt.xml

    rd58da4b r2df066c9  
    101101      that link against these functions require ABI version 1.  If you must
    102102      have such functions because of some binary-only application or to be
    103       to be compliant with LSB, build the package again with the following
     103      compliant with LSB, build the package again with the following
    104104      commands:</para>
    105105
    106 <screen><userinput remap="nodump">make distclean
     106<screen role="nodump"><userinput>make distclean
    107107./configure --prefix=/usr                \
    108108            --enable-hashes=strong,glibc \
  • chapter08/markupsafe.xml

    rd58da4b r2df066c9  
    4343    <para>Compile MarkupSafe with the following command:</para>
    4444
    45 <screen><userinput remap="make">pip3 wheel -w dist --no-build-isolation --no-deps $PWD</userinput></screen>
     45<screen><userinput remap="make">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
    4646
    4747    <para>This package does not come with a test suite.</para>
  • chapter08/meson.xml

    rd58da4b r2df066c9  
    4747    <para>Compile Meson with the following command:</para>
    4848
    49 <screen><userinput remap="make">pip3 wheel -w dist --no-build-isolation --no-deps $PWD</userinput></screen>
     49<screen><userinput remap="make">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
    5050
    5151    <para>The test suite requires some packages outside the scope of LFS.</para>
  • chapter08/mpc.xml

    rd58da4b r2df066c9  
    7070
    7171    <segmentedlist>
    72       <segtitle>Installed Libraries</segtitle>
    73       <segtitle>Installed Directory</segtitle>
     72      <segtitle>Installed libraries</segtitle>
     73      <segtitle>Installed directory</segtitle>
    7474
    7575      <seglistitem>
  • chapter08/mpfr.xml

    rd58da4b r2df066c9  
    4242    <title>Installation of MPFR</title>
    4343
    44     <!-- https://sympa.inria.fr/sympa/arc/mpfr/2023-01/msg00002.html
    45          https://gitlab.inria.fr/mpfr/mpfr/-/commit/5172494c
    46 
    47          Note that it's a different issue from Glibc #30068 we've fixed in
    48          chapter08/glibc.xml with a sed.  Normally we just document the
    49          test failure, but in this case the particular subtest also serves
    50          as an additional guard against Glibc #30068.  So we apply the
    51          upstream fix here.   -->
    52     <para>Fix a test case based on a bug of old Glibc releases:</para>
    53 
    54 <screen><userinput remap="pre">sed -e 's/+01,234,567/+1,234,567 /' \
    55     -e 's/13.10Pd/13Pd/'            \
    56     -i tests/tsprintf.c</userinput></screen>
    57 
    5844    <para>Prepare MPFR for compilation:</para>
    5945
     
    7359    </important>
    7460
    75     <para>Test the results and ensure that all 197 tests passed:</para>
     61    <para>Test the results and ensure that all 198 tests passed:</para>
    7662
    7763<screen><userinput remap="test">make check</userinput></screen>
     
    8975
    9076    <segmentedlist>
    91       <segtitle>Installed Libraries</segtitle>
     77      <segtitle>Installed libraries</segtitle>
    9278      <segtitle>Installed directory</segtitle>
    9379
  • chapter08/ncurses.xml

    rd58da4b r2df066c9  
    159159    <para>If desired, install the Ncurses documentation:</para>
    160160
    161 <screen><userinput remap="install">mkdir -pv      /usr/share/doc/ncurses-&ncurses-version;
    162 cp -v -R doc/* /usr/share/doc/ncurses-&ncurses-version;</userinput></screen>
     161<screen><userinput remap="install">cp -v -R doc -T /usr/share/doc/ncurses-&ncurses-version;</userinput></screen>
    163162
    164163    <note>
  • chapter08/openssl.xml

    rd58da4b r2df066c9  
    100100        <emphasis>when upgrading to a version with the same MAJOR version
    101101        number</emphasis>.
    102       </para>
    103 
    104       <!-- https://bugzilla.mindrot.org/show_bug.cgi?id=3548 -->
    105       <para>
    106         If <application>OpenSSH</application> is installed, it will be an
    107         exception of the general rule above.  It contains an
    108         over-restrictive OpenSSL version check, so both SSH client and SSH
    109         server will refuse to start if OpenSSL
    110         is updated with MAJOR version number unchanged but MINOR version
    111         number changed.  You need to rebuild
    112         <application>OpenSSH</application> after such an upgrade.
    113         <emphasis role='bold'>If <application>OpenSSH</application> is being
    114         used to access the system, you must rebuild and reinstall it
    115         after upgrading OpenSSL to a new MINOR version number before logout
    116         or you won't be able to login via SSH anymore.</emphasis>
    117102      </para>
    118103
  • chapter08/perl.xml

    rd58da4b r2df066c9  
    7777
    7878    <variablelist>
    79       <title>The meaning of the configure options:</title>
    80 
    81       <varlistentry>
    82         <term><parameter>-Dvendorprefix=/usr</parameter></term>
    83         <listitem>
    84           <para>This ensures <command>perl</command> knows how to
    85           tell packages where they should install their Perl modules.</para>
    86         </listitem>
    87       </varlistentry>
     79      <title>The meaning of the new Configure options:</title>
    8880
    8981      <varlistentry>
     
    10698
    10799      <varlistentry>
    108         <term><parameter>-Duseshrplib</parameter></term>
    109         <listitem>
    110           <para>Build a shared libperl needed by some Perl modules.</para>
    111         </listitem>
    112       </varlistentry>
    113 
    114       <varlistentry>
    115100        <term><parameter>-Dusethreads</parameter></term>
    116101        <listitem>
    117102          <para>Build Perl with support for threads.</para>
    118         </listitem>
    119       </varlistentry>
    120 
    121       <varlistentry>
    122         <term><parameter>-Dprivlib,-Darchlib,-Dsitelib,...</parameter></term>
    123         <listitem>
    124           <para>These settings define where Perl looks for installed
    125           modules. The LFS editors chose to put them in a directory structure
    126           based on the MAJOR.MINOR version of Perl (&perl-version-min;) which
    127           allows upgrading Perl to newer patch levels (the patch level is
    128           the last dot separated part in the full version string like
    129           &perl-version;) without reinstalling all of the modules.</para>
    130103        </listitem>
    131104      </varlistentry>
  • chapter08/pkgconf.xml

    rd58da4b r2df066c9  
    4242
    4343  <sect2 role="installation">
     44
    4445    <title>Installation of Pkgconf</title>
     46
     47    <!-- https://github.com/pkgconf/pkgconf/issues/317 -->
     48    <para>Fix a regression in pkgconf-2.0.3 breaking BLFS packages:</para>
     49
     50    <screen><userinput remap="pre">sed -i 's/str\(cmp.*package\)/strn\1, strlen(pkg-&gt;why)/' cli/main.c</userinput></screen>
    4551
    4652    <para>Prepare Pkgconf for compilation:</para>
  • chapter08/procps.xml

    rd58da4b r2df066c9  
    6868    <para>Compile the package:</para>
    6969
    70 <screen><userinput remap="make">make</userinput></screen>
    71 <!--
    72     <para>The test suite needs some custom modifications for LFS.
    73     Remove a test that fails when scripting does not use a tty device and
    74     fix two others.
    75     To run the test suite, run the following commands:</para>
    76 
    77 <screen><userinput remap="test">sed -i -r 's|(pmap_initname)\\\$|\1|' testsuite/pmap.test/pmap.exp
    78 sed -i '/set tty/d' testsuite/pkill.test/pkill.exp
    79 rm testsuite/pgrep.test/pgrep.exp
    80 make check</userinput></screen>
    81 -->
     70<screen revision='sysv'><userinput remap="make">make</userinput></screen>
     71<screen revision='systemd'><userinput remap="make">make src_w_LDADD='$(LDADD) -lsystemd'</userinput></screen>
     72
    8273    <para> To run the test suite, run:</para>
    8374
    8475<screen><userinput remap="test">make check</userinput></screen>
    85 
    86     <!-- It's because "free -v" shows "used" greater than "total", and
    87          a negative "free" for "Comm" line.  The "total" value is from
    88          "CommitLimit" in /proc/meminfo, which is the limit for one process.
    89          But the "used" value is from "Committed_AS" in the same file,
    90          which is the total commited virtual memory space of all processes.
    91          I'll make a report to upstream anyway.  -->
    92     <para>One test named <filename>free with commit</filename>
    93     may fail if some applications with a custom memory allocator (for
    94     example, JVM and Web browsers) are running on the host distro.</para>
    9576
    9677    <para>Install the package:</para>
  • chapter08/python.xml

    rd58da4b r2df066c9  
    192192
    193193    <segmentedlist>
    194       <segtitle>Installed Programs</segtitle>
    195       <segtitle>Installed Library</segtitle>
    196       <segtitle>Installed Directories</segtitle>
     194      <segtitle>Installed programs</segtitle>
     195      <segtitle>Installed library</segtitle>
     196      <segtitle>Installed directories</segtitle>
    197197
    198198      <seglistitem>
  • chapter08/shadow.xml

    rd58da4b r2df066c9  
    108108            --disable-static    \
    109109            --with-{b,yes}crypt \
     110            --without-libbsd    \
    110111            --with-group-name-max-length=32</userinput></screen>
    111112
     
    142143          <para>The longest permissible user name is 32 characters.  Make the maximum
    143144          length of a group name the same.</para>
     145        </listitem>
     146      </varlistentry>
     147
     148      <varlistentry>
     149        <term><parameter>--without-libbsd</parameter></term>
     150        <listitem>
     151           <para>Do not use the readpassphrase function from libbsd which
     152           is not in LFS.  Use the internal copy instead.</para>
    144153        </listitem>
    145154      </varlistentry>
  • chapter08/stripping.xml

    rd58da4b r2df066c9  
    3030  dynamically linked binaries and shared libraries).</para>
    3131
    32   <para>The debugging symbols from selected libraries are preserved
    33   in separate files.  That debugging information is needed to run
    34   regression tests with <ulink
     32  <!-- TODO: Zstd is better than Zlib for both speed and size.
     33             Unfortunately Valgrind does not support Zstd-compressed debug
     34             info yet: https://bugs.kde.org/show_bug.cgi?id=469782 -->
     35  <para>The debugging symbols from selected libraries are compressed with
     36  <application>Zlib</application> and preserved in separate files.  That
     37  debugging information is needed to run regression tests with <ulink
    3538  url='&blfs-book;/general/valgrind.html'>valgrind</ulink> or <ulink
    3639  url='&blfs-book;/general/gdb.html'>gdb</ulink> later, in BLFS.
     
    7982
    8083for LIB in $save_usrlib; do
    81     objcopy --only-keep-debug $LIB $LIB.dbg
     84    objcopy --only-keep-debug --compress-debug-sections=zlib $LIB $LIB.dbg
    8285    cp $LIB /tmp/$LIB
    8386    strip --strip-unneeded /tmp/$LIB
     
    8992online_usrbin="bash find strip"
    9093online_usrlib="libbfd-&binutils-version;.so
    91                libsframe.so.0.0.0
     94               libsframe.so.&libsframe-version;
    9295               libhistory.so.&readline-soversion;
    9396               libncursesw.so.&ncurses-version;
     
    9598               libreadline.so.&readline-soversion;
    9699               libz.so.&zlib-version;
     100               libzstd.so.&zstd-version;
    97101               $(cd /usr/lib; find libnss*.so* -type f)"
    98102
  • chapter08/systemd.xml

    rd58da4b r2df066c9  
    4040  <sect2 role="installation">
    4141    <title>Installation of systemd</title>
    42 
    43     <para>
    44       Remove several inappropriate uses of the <literal>pure</literal>
    45       attribute that cause runtime issues when the package is built
    46       with gcc-13 or later:
    47     </para>
    48 
    49 <screen><userinput remap='pre'>sed '/bus_message_type_from_string/s/_pure_//' \
    50     -i src/libsystemd/sd-bus/bus-internal.h    &amp;&amp;
    51 sed '/devt_hash_func/s/_pure_//'               \
    52     -i src/basic/hash-funcs.h                  &amp;&amp;
    53 sed '/job_get_timeout/s/_pure_//'              \
    54     -i src/core/job.h</userinput></screen>
    5542
    5643    <para>Remove two unneeded groups,
     
    8269      -Dpamconfdir=no               \
    8370      -Ddev-kvm-mode=0660           \
     71      -Dnobody-group=nogroup        \
    8472      -Ddocdir=/usr/share/doc/systemd-&systemd-version; \
    8573      ..</userinput></screen>
     
    192180        </listitem>
    193181      </varlistentry>
     182
     183      <varlistentry>
     184        <term><parameter>-Dnobody-group=nogroup</parameter></term>
     185        <listitem>
     186          <para>Tell the package the group name with GID 65534 is
     187          <systemitem class='groupname'>nogroup</systemitem>.</para>
     188        </listitem>
     189      </varlistentry>
    194190    </variablelist>
    195191
     
    206202    <!-- Please make sure systemd man pages tarball has a common leading
    207203         component in the path.  -->
    208 <screen><userinput remap="install">tar -xf ../../systemd-man-pages-&systemd-man-version;.tar.xz --strip-components=1 -C /usr/share/man</userinput></screen>
     204<screen><userinput remap="install">tar -xf ../../systemd-man-pages-&systemd-version;.tar.xz \
     205    --no-same-owner --strip-components=1   \
     206    -C /usr/share/man</userinput></screen>
    209207
    210208    <para>Create the <filename>/etc/machine-id</filename> file needed by
     
    245243        <seg>busctl, coredumpctl, halt (symlink to systemctl),
    246244        hostnamectl, init, journalctl, kernel-install, localectl, loginctl,
    247         machinectl, networkctl, oomctl, portablectl, poweroff (symlink to
     245        machinectl, mount.ddi (symlink to systemd-dissect), networkctl,
     246        oomctl, portablectl, poweroff (symlink to
    248247        systemctl), reboot (symlink to systemctl), resolvconf (symlink to
    249248        resolvectl), resolvectl, runlevel (symlink to systemctl), shutdown
    250249        (symlink to systemctl), systemctl, systemd-ac-power, systemd-analyze,
    251250        systemd-ask-password, systemd-cat, systemd-cgls, systemd-cgtop,
    252         systemd-creds, systemd-delta, systemd-detect-virt,
     251        systemd-confext (symlink to systemd-sysext), systemd-creds,
     252        systemd-delta, systemd-detect-virt,
    253253        systemd-dissect, systemd-escape, systemd-hwdb, systemd-id128,
    254254        systemd-inhibit, systemd-machine-id-setup,
  • chapter08/tar.xml

    rd58da4b r2df066c9  
    7373<screen><userinput remap="test">make check</userinput></screen>
    7474
     75    <!-- On one system the -j4 improvement is 167s - 46s = 121s (72.46%) -->
     76    <note><para>The test time for Tar can be reduced significantly on a
     77    system with multiple cores.  To do this, append
     78    <command>TESTSUITEFLAGS=-j&lt;N&gt;</command> to the line above.  For
     79    instance, using -j4 can reduce the test time by over 70
     80    percent.</para></note>
     81
    7582    <para>One test, capabilities: binary store/restore, is known to fail if it is
    7683    run because LFS lacks selinux, but will be skipped if the host kernel does
    77     not support extended attributes on the filesystem used for building LFS.</para>
     84    not support extended attributes or security labels on the filesystem
     85    used for building LFS.</para>
    7886
    7987    <para>Install the package:</para>
  • chapter08/udev.xml

    rd58da4b r2df066c9  
    128128install -vm755 udevadm                     /usr/bin/
    129129install -vm755 systemd-hwdb                /usr/bin/udev-hwdb
    130 ln      -sv    ../bin/udevadm              /usr/sbin/udevd
     130ln      -svfn  ../bin/udevadm              /usr/sbin/udevd
    131131cp      -av    libudev.so{,*[0-9]}         /usr/lib/
    132132install -vm644 ../src/libudev/libudev.h    /usr/include/
     
    148148    <!-- Please make sure systemd man pages tarball has a common leading
    149149         component in the path.  -->
    150 <screen><userinput remap="install">tar -xf ../../systemd-man-pages-253.tar.xz --strip-components=1       \
     150<screen><userinput remap="install">tar -xf ../../systemd-man-pages-&systemd-man-version;.tar.xz                            \
     151    --no-same-owner --strip-components=1                              \
    151152    -C /usr/share/man --wildcards '*/udev*' '*/libudev*'              \
    152153                                  '*/systemd-'{hwdb,udevd.service}.8
    153 sed 's/systemd\(\\\?-\)/udev-/' /usr/share/man/man8/systemd-hwdb.8    \
    154                               > /usr/share/man/man8/udev-hwdb.8
     154sed 's/systemd\(\\\?-\)/udev\1/' /usr/share/man/man8/systemd-hwdb.8   \
     155                               > /usr/share/man/man8/udev-hwdb.8
    155156sed 's|lib.*udevd|sbin/udevd|'                                        \
    156157    /usr/share/man/man8/systemd-udevd.service.8                       \
  • chapter08/util-linux.xml

    rd58da4b r2df066c9  
    4343    <title>Installation of Util-linux</title>
    4444
    45     <para>First, disable a problem test:</para>
     45    <para>First, disable a problematic test:</para>
    4646
    4747    <screen><userinput remap="pre">sed -i '/test_mkfds/s/^/#/' tests/helpers/Makemodule.am</userinput></screen>
     
    12311231          unique among all UUIDs created, on the local system and on other
    12321232          systems, in the past and in the future, with extremely high
    1233           probability (~340 trillion trillion trillion unique UUIDs are possible)</para>
     1233          probability (2<superscript>128</superscript> UUIDs are
     1234          possible)</para>
    12341235          <indexterm zone="ch-system-util-linux uuidgen">
    12351236            <primary sortas="b-uuidgen">uuidgen</primary>
  • chapter08/wheel.xml

    rd58da4b r2df066c9  
    4343    <para>Compile Wheel with the following command:</para>
    4444
    45 <screen><userinput remap="make">pip3 wheel -w dist --no-build-isolation --no-deps $PWD</userinput></screen>
     45<screen><userinput remap="make">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
    4646
    4747    <para>Install Wheel with the following command:</para>
Note: See TracChangeset for help on using the changeset viewer.