Changeset d7a9421 for chapter08


Ignore:
Timestamp:
05/12/2021 04:24:11 AM (3 years ago)
Author:
Douglas R. Reno <renodr@…>
Branches:
11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
Children:
5ed37b3, c034573, df462a9
Parents:
0f7d4cb
Message:

Merge Xi's changes into trunk
Update to meson-0.58.0
Update to systemd-248
Update to gcc-11.1.0
Update to linux-5.12.1
Update to iproute2-5.12.0
Update to Python-3.9.5
Make /bin, /sbin, and /lib symlinks to their counterparts in /usr.
Thanks again for a significant portion of this work goes to Xi, I only
really merged it and made a couple of modifications for my updates. To
LFS 11.x we go!

Location:
chapter08
Files:
34 edited

Legend:

Unmodified
Added
Removed
  • chapter08/acl.xml

    r0f7d4cb rd7a9421  
    4545    <para>Prepare Acl for compilation:</para>
    4646
    47 <screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr         \
    48             --bindir=/bin         \
     47<screen><userinput remap="configure">./configure --prefix=/usr         \
    4948            --disable-static      \
    50             --libexecdir=/usr/lib \
    51             --docdir=/usr/share/doc/acl-&acl-version;</userinput></screen>
    52 
    53 <screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr         \
    54             --disable-static      \
    55             --libexecdir=/usr/lib \
    5649            --docdir=/usr/share/doc/acl-&acl-version;</userinput></screen>
    5750
     
    6962
    7063<screen><userinput remap="install">make install</userinput></screen>
    71 
    72     <para>The shared library needs to be moved to
    73     <filename class="directory">/lib</filename>, and as a result the
    74     <filename class="extension">.so</filename> file in
    75     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    76 
    77 <screen><userinput remap="install">mv -v /usr/lib/libacl.so.* /lib
    78 ln -sfv ../../lib/$(readlink /usr/lib/libacl.so) /usr/lib/libacl.so</userinput></screen>
    7964
    8065  </sect2>
  • chapter08/adjusting.xml

    r0f7d4cb rd7a9421  
    103103  <para os="n">The output of the last command should be:</para>
    104104
    105 <screen os="o"><computeroutput>attempt to open /lib/libc.so.6 succeeded</computeroutput></screen>
     105<screen os="o"><computeroutput>attempt to open /usr/lib/libc.so.6 succeeded</computeroutput></screen>
    106106
    107107  <para os="p">Make sure GCC is using the correct dynamic linker:</para>
     
    112112  platform-specific differences in dynamic linker name):</para>
    113113
    114 <screen os="s"><computeroutput>found ld-linux-x86-64.so.2 at /lib/ld-linux-x86-64.so.2</computeroutput></screen>
     114<screen os="s"><computeroutput>found ld-linux-x86-64.so.2 at /usr/lib/ld-linux-x86-64.so.2</computeroutput></screen>
    115115
    116116  <para os="t">If the output does not appear as shown above or is not received
  • chapter08/attr.xml

    r0f7d4cb rd7a9421  
    4444    <para>Prepare Attr for compilation:</para>
    4545
    46 <screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr     \
    47             --bindir=/bin     \
    48             --disable-static  \
    49             --sysconfdir=/etc \
    50             --docdir=/usr/share/doc/attr-&attr-version;</userinput></screen>
    51 
    52 <screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr     \
     46<screen><userinput remap="configure">./configure --prefix=/usr     \
    5347            --disable-static  \
    5448            --sysconfdir=/etc \
     
    6862
    6963<screen><userinput remap="install">make install</userinput></screen>
    70 
    71     <para>The shared library needs to be moved to
    72     <filename class="directory">/lib</filename>, and as a result the
    73     <filename class="extension">.so</filename> file in
    74     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    75 
    76 <screen><userinput remap="install">mv -v /usr/lib/libattr.so.* /lib
    77 ln -sfv ../../lib/$(readlink /usr/lib/libattr.so) /usr/lib/libattr.so</userinput></screen>
    7864
    7965  </sect2>
  • chapter08/bash.xml

    r0f7d4cb rd7a9421  
    8585EOF</userinput></screen>
    8686
    87     <para>Install the package and move the main executable to
    88     <filename class='directory'>/bin</filename>:</para>
     87    <para>Install the package:</para>
    8988
    90 <screen><userinput remap="install">make install
    91 mv -vf /usr/bin/bash /bin</userinput></screen>
     89<screen><userinput remap="install">make install</userinput></screen>
    9290
    9391    <para>Run the newly compiled <command>bash</command> program (replacing the one that is
  • chapter08/bzip2.xml

    r0f7d4cb rd7a9421  
    8585<screen><userinput remap="install">make PREFIX=/usr install</userinput></screen>
    8686
     87    <para>Install the shared library:</para>
     88<screen><userinput remap="install">cp -av libbz2.so.* /usr/lib
     89ln -sv libbz2.so.&bzip2-version; /usr/lib/libbz2.so</userinput></screen>
     90
    8791    <para>Install the shared <command>bzip2</command> binary into the
    88     <filename class="directory">/bin</filename> directory, make
    89     some necessary symbolic links, and clean up:</para>
    90 
    91 <screen><userinput remap="install">cp -v bzip2-shared /bin/bzip2
    92 cp -av libbz2.so* /lib
    93 ln -sv ../../lib/libbz2.so.1.0 /usr/lib/libbz2.so
    94 rm -v /usr/bin/{bunzip2,bzcat,bzip2}
    95 ln -sv bzip2 /bin/bunzip2
    96 ln -sv bzip2 /bin/bzcat</userinput></screen>
     92    <filename class="directory">/bin</filename> directory:</para>
     93
     94<screen><userinput remap="install">cp -v bzip2-shared /bin/bzip2</userinput></screen>
    9795
    9896    <para>Remove an useless static library:</para>
  • chapter08/coreutils.xml

    r0f7d4cb rd7a9421  
    143143    <para>Move programs to the locations specified by the FHS:</para>
    144144
    145 <screen><userinput remap="install">mv -v /usr/bin/{cat,chgrp,chmod,chown,cp,date,dd,df,echo} /bin
    146 mv -v /usr/bin/{false,ln,ls,mkdir,mknod,mv,pwd,rm} /bin
    147 mv -v /usr/bin/{rmdir,stty,sync,true,uname} /bin
    148 mv -v /usr/bin/chroot /usr/sbin
     145<screen><userinput remap="install">mv -v /usr/bin/chroot /usr/sbin
    149146mv -v /usr/share/man/man1/chroot.1 /usr/share/man/man8/chroot.8
    150147sed -i 's/"1"/"8"/' /usr/share/man/man8/chroot.8</userinput></screen>
    151 
    152     <para revision="sysv">Some of the scripts in the LFS-Bootscripts package
    153     depend on <command>head</command>, <command>nice</command>,
    154     <command>sleep</command>, and <command>touch</command>.  As <filename
    155     class="directory">/usr</filename> may not be available during the early and
    156     late stages of booting, those binaries need to be on the root partition to
    157     maintain FHS compliance:</para>
    158 
    159 <screen><userinput remap="install">mv -v /usr/bin/{head,nice,sleep,touch} /bin</userinput></screen>
    160148
    161149  </sect2>
  • chapter08/dbus.xml

    r0f7d4cb rd7a9421  
    9898<screen><userinput remap="install">make install</userinput></screen>
    9999
    100     <para>The shared library needs to be moved to
    101     <filename class="directory">/lib</filename>, and as a result the
    102     <filename class="extension">.so</filename> file in
    103     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    104 
    105 <screen><userinput remap="install">mv -v /usr/lib/libdbus-1.so.* /lib
    106 ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so</userinput></screen>
    107 
    108100    <para>Create a symlink so that D-Bus and systemd can use the same
    109101    <filename>machine-id</filename> file:</para>
  • chapter08/e2fsprogs.xml

    r0f7d4cb rd7a9421  
    5454
    5555<screen><userinput remap="configure">../configure --prefix=/usr           \
    56              --bindir=/bin           \
    57              --with-root-prefix=""   \
    5856             --enable-elf-shlibs     \
    5957             --disable-libblkid      \
     
    6462    <variablelist>
    6563      <title>The meaning of the configure options:</title>
    66 
    67       <varlistentry>
    68         <term><parameter>--with-root-prefix=""</parameter> and
    69               <parameter>--bindir=/bin</parameter></term>
    70         <listitem>
    71           <para>Certain programs (such as the <command>e2fsck</command>
    72           program) are considered essential programs.  When, for example,
    73           <filename class="directory">/usr</filename> is not mounted, these
    74           programs still need to be available. They belong in directories
    75           like <filename class="directory">/lib</filename> and <filename
    76           class="directory">/sbin</filename>. If this option is not passed
    77           to configure, the programs are installed into the
    78           <filename class="directory">/usr</filename> directory.</para>
    79         </listitem>
    80       </varlistentry>
    8164
    8265      <varlistentry>
  • chapter08/eudev.xml

    r0f7d4cb rd7a9421  
    5454
    5555<screen><userinput remap="configure">./configure --prefix=/usr           \
    56             --bindir=/sbin          \
    57             --sbindir=/sbin         \
    58             --libdir=/usr/lib       \
    5956            --sysconfdir=/etc       \
    60             --libexecdir=/lib       \
    61             --with-rootprefix=      \
    62             --with-rootlibdir=/lib  \
    6357            --enable-manpages       \
    6458            --disable-static</userinput></screen>
     
    7165    will also be used as a part of installation:</para>
    7266
    73 <screen><userinput remap="test">mkdir -pv /lib/udev/rules.d
     67<screen><userinput remap="test">mkdir -pv /usr/lib/udev/rules.d
    7468mkdir -pv /etc/udev/rules.d</userinput></screen>
    7569
     
    10498    <para>Information about hardware devices is maintained in the
    10599    <filename class="directory">/etc/udev/hwdb.d</filename> and
    106     <filename class="directory">/lib/udev/hwdb.d</filename> directories.
     100    <filename class="directory">/usr/lib/udev/hwdb.d</filename> directories.
    107101    <application>Eudev</application> needs that information to be compiled
    108102    into a binary database <filename>/etc/udev/hwdb.bin</filename>. Create the
     
    125119
    126120      <seglistitem>
    127         <seg><!-- These are in /lib/udev and not to be called by the user:
     121        <seg><!-- These are in /usr/lib/udev and not to be called by the user:
    128122         accelerometer, ata_id, cdrom_id, collect, mtd_probe,
    129123         scsi_id, v4l_id,--> udevadm and udevd</seg>
     
    131125        <seg>libudev.so</seg>
    132126
    133         <seg>/etc/udev, /lib/udev, and /usr/share/doc/udev-&udev-lfs-version;</seg>
     127        <seg>/etc/udev, /usr/lib/udev, and /usr/share/doc/udev-&udev-lfs-version;</seg>
    134128      </seglistitem>
    135129    </segmentedlist>
  • chapter08/file.xml

    r0f7d4cb rd7a9421  
    5858<screen><userinput remap="install">make install</userinput></screen>
    5959
    60     <para><command>/bin/more</command> from util-linux will link to
    61     <filename class="libraryfile">libmagic.so</filename>, so the shared
    62     library should be moved to <filename class="directory">/lib</filename>,
    63     and as a result the
    64     <filename class="extension">.so</filename> file in
    65     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    66 
    67 <screen><userinput remap="install">mv -v /usr/lib/libmagic.so.* /lib
    68 ln -sfv ../../lib/$(readlink /usr/lib/libmagic.so) /usr/lib/libmagic.so</userinput></screen>
    69 
    7060  </sect2>
    7161
  • chapter08/findutils.xml

    r0f7d4cb rd7a9421  
    7575<screen><userinput remap="install">make install</userinput></screen>
    7676
    77     <para revision="sysv">Some of the scripts in the LFS-Bootscripts package
    78     depend on <command>find</command>.  As <filename
    79     class="directory">/usr</filename> may not be available during the early
    80     stages of booting, this program needs to be on the root partition.  The
    81     <command>updatedb</command> script also needs to be modified to correct an
    82     explicit path:</para>
    83 
    84     <para revision="systemd"> Some packages in BLFS and beyond expect the
    85     <command>find</command> program in <filename
    86     class="directory">/bin</filename>, so make sure it's placed there:</para>
    87 
    88 <screen><userinput remap="install">mv -v /usr/bin/find /bin
    89 sed -i 's|find:=${BINDIR}|find:=/bin|' /usr/bin/updatedb</userinput></screen>
    90 
    9177  </sect2>
    9278
  • chapter08/gcc.xml

    r0f7d4cb rd7a9421  
    125125    apparently related to the en_HK locale.</para>
    126126
    127     <para>Additionally the following tests related to the following files
     127    <para>Additionally, the test constexpr-52830 is known to fail.</para>
     128
     129<!--<para>Additionally the following tests related to the following files
    128130    are known to fail with glibc-2.33: asan_test.C, co-ret-17-void-ret-coro.C,
    129131    pr95519-05-gro.C, pr80166.c.</para>
     132-->
    130133
    131134<!-- don't fail anymore after the move of iana-etc and /etc/hosts
     
    165168    for "historical" reasons.</para>
    166169
    167 <screen><userinput remap="install">ln -sv ../usr/bin/cpp /lib</userinput></screen>
     170<screen><userinput remap="install">ln -svr /usr/bin/cpp /lib</userinput></screen>
    168171  <!-- already done earlier
    169172    <para>Many packages use the name <command>cc</command> to call the C
  • chapter08/glibc.xml

    r0f7d4cb rd7a9421  
    5656    -i nss/nss_database.c</userinput></screen>
    5757
     58    <para>Fix a build issue with gcc-11.1:</para>
     59
     60<screen><userinput remap="pre">sed 's/amx_/amx-/' -i sysdeps/x86/tst-cpu-features-supports.c</userinput></screen>
     61
    5862    <para>The Glibc documentation recommends building Glibc
    5963    in a dedicated build directory:</para>
     
    6973             --enable-stack-protector=strong          \
    7074             --with-headers=/usr/include              \
    71              libc_cv_slibdir=/lib</userinput></screen>
     75             libc_cv_slibdir=/usr/lib</userinput></screen>
    7276
    7377    <variablelist>
     
    110114
    111115      <varlistentry>
    112         <term><parameter>libc_cv_slibdir=/lib</parameter></term>
     116        <term><parameter>libc_cv_slibdir=/usr/lib</parameter></term>
    113117        <listitem>
    114118          <para>This variable sets the correct library for all
     
    222226
    223227    <screen revision="systemd"><userinput remap="install">install -v -Dm644 ../nscd/nscd.tmpfiles /usr/lib/tmpfiles.d/nscd.conf
    224 install -v -Dm644 ../nscd/nscd.service /lib/systemd/system/nscd.service</userinput></screen>
     228install -v -Dm644 ../nscd/nscd.service /usr/lib/systemd/system/nscd.service</userinput></screen>
    225229
    226230    <para>Next, install the locales that can make the system respond in a
  • chapter08/grep.xml

    r0f7d4cb rd7a9421  
    4343    <para>Prepare Grep for compilation:</para>
    4444
    45 <screen><userinput remap="configure">./configure --prefix=/usr --bindir=/bin</userinput></screen>
     45<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
    4646
    4747    <para>Compile the package:</para>
  • chapter08/gzip.xml

    r0f7d4cb rd7a9421  
    5858<screen><userinput remap="install">make install</userinput></screen>
    5959
    60     <para>Move a program that needs to be on the root filesystem:</para>
    61 
    62 <screen><userinput remap="install">mv -v /usr/bin/gzip /bin</userinput></screen>
    63 
    6460  </sect2>
    6561
  • chapter08/inetutils.xml

    r0f7d4cb rd7a9421  
    115115<screen><userinput remap="install">make install</userinput></screen>
    116116
    117     <para>Move some programs so they are available if <filename
    118     class='directory'>/usr</filename> is not accessible:</para>
    119 
    120 <screen><userinput remap="install">mv -v /usr/bin/{hostname,ping,ping6,traceroute} /bin
    121 mv -v /usr/bin/ifconfig /sbin</userinput></screen>
     117    <para>Move a program to the proper location:</para>
     118
     119<screen><userinput remap="install">mv -v /{,s}bin/ifconfig</userinput></screen>
    122120
    123121  </sect2>
  • chapter08/kmod.xml

    r0f7d4cb rd7a9421  
    4545
    4646<screen><userinput remap="configure">./configure --prefix=/usr          \
    47             --bindir=/bin          \
    4847            --sysconfdir=/etc      \
    49             --with-rootlibdir=/lib \
    5048            --with-xz              \
    5149            --with-zstd            \
     
    5957        <listitem>
    6058          <para>These options enable Kmod to handle compressed kernel modules.</para>
    61         </listitem>
    62       </varlistentry>
    63 
    64       <varlistentry>
    65         <term><parameter>--with-rootlibdir=/lib</parameter></term>
    66         <listitem>
    67           <para>This option ensures different library related files are placed
    68           in the correct directories.</para>
    6959        </listitem>
    7060      </varlistentry>
  • chapter08/libcap.xml

    r0f7d4cb rd7a9421  
    7070<screen><userinput remap="test">make test</userinput></screen>
    7171
    72     <para>Install the package and make sure the essential libraries are in
    73     the correct directory:</para>
     72    <para>Install the package:</para>
    7473
    75 <screen><userinput remap="install">make prefix=/usr lib=lib install
    76 for libname in cap psx; do
    77     mv -v /usr/lib/lib${libname}.so.* /lib
    78     ln -sfv ../../lib/lib${libname}.so.2 /usr/lib/lib${libname}.so
    79     chmod -v 755 /lib/lib${libname}.so.&libcap-version;
    80 done</userinput></screen>
     74<screen><userinput remap="install">make prefix=/usr lib=lib install</userinput></screen>
     75
     76    <para>Adjust the permission of the shared libraries:</para>
     77
     78<screen><userinput remap="install">chmod -v 755 /usr/lib/lib{cap,psx}.so.&libcap-version;</userinput></screen>
    8179
    8280  </sect2>
  • chapter08/libelf.xml

    r0f7d4cb rd7a9421  
    4949    <screen><userinput remap="configure">./configure --prefix=/usr                \
    5050            --disable-debuginfod         \
    51             --enable-libdebuginfod=dummy \
    52             --libdir=/lib</userinput></screen>
     51            --enable-libdebuginfod=dummy</userinput></screen>
    5352
    5453    <para>Compile the package:</para>
     
    6665<screen><userinput remap="install">make -C libelf install
    6766install -vm644 config/libelf.pc /usr/lib/pkgconfig
    68 rm /lib/libelf.a</userinput></screen>
     67rm /usr/lib/libelf.a</userinput></screen>
    6968
    7069  </sect2>
  • chapter08/man-db.xml

    r0f7d4cb rd7a9421  
    4444    <para>Prepare Man-DB for compilation:</para>
    4545
    46 <screen revision="systemd"><userinput remap="configure">sed -i '/find/s@/usr@@' init/systemd/man-db.service.in
    47 
    48 ./configure --prefix=/usr                        \
     46<screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr                        \
    4947            --docdir=/usr/share/doc/man-db-&man-db-version; \
    5048            --sysconfdir=/etc                    \
     
    6967      <title>The meaning of the configure options:</title>
    7068
    71       <varlistentry revision="systemd">
    72         <term><command>sed -i '/find/s@/usr@@' init/systemd/man-db.service.in</command></term>
    73         <listitem>
    74           <para>This changes a harcoded path to the <command>find</command>
    75           utility, which we install in
    76           <filename class="directory">/bin</filename>.</para>
    77         </listitem>
    78       </varlistentry>
    79 
    8069      <varlistentry>
    8170        <term><parameter>--disable-setuid</parameter></term>
  • chapter08/ncurses.xml

    r0f7d4cb rd7a9421  
    100100
    101101<screen><userinput remap="install">make install</userinput></screen>
    102 
    103     <para>Move the shared libraries to the
    104     <filename class="directory">/lib</filename> directory, where they are
    105     expected to reside:</para>
    106 
    107 <screen><userinput remap="install">mv -v /usr/lib/libncursesw.so.6* /lib</userinput></screen>
    108 
    109     <para>Because the libraries have been moved, one symlink points to
    110     a non-existent file. Recreate it:</para>
    111 
    112 <screen><userinput remap="install">ln -sfv ../../lib/$(readlink /usr/lib/libncursesw.so) /usr/lib/libncursesw.so</userinput></screen>
    113102
    114103    <para>Many applications still expect the linker to be able to find
  • chapter08/procps.xml

    r0f7d4cb rd7a9421  
    5252
    5353<screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr                            \
    54             --exec-prefix=                           \
    55             --libdir=/usr/lib                        \
    5654            --docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
    5755            --disable-static                         \
     
    5957
    6058<screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr                            \
    61             --exec-prefix=                           \
    62             --libdir=/usr/lib                        \
    6359            --docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
    6460            --disable-static                         \
     
    10298
    10399<screen><userinput remap="install">make install</userinput></screen>
    104 
    105     <para>Finally, move essential libraries to a location that can be found
    106     if <filename class="directory">/usr</filename> is not mounted.</para>
    107 
    108 <screen><userinput remap="install">mv -v /usr/lib/libprocps.so.* /lib
    109 ln -sfv ../../lib/$(readlink /usr/lib/libprocps.so) /usr/lib/libprocps.so</userinput></screen>
    110100
    111101  </sect2>
  • chapter08/psmisc.xml

    r0f7d4cb rd7a9421  
    5555
    5656<screen><userinput remap="install">make install</userinput></screen>
    57 
    58     <para>Finally, move the <command>killall</command> and <command>fuser</command>
    59     programs to the location specified by the FHS:</para>
    60 
    61 <screen><userinput remap="install">mv -v /usr/bin/fuser   /bin
    62 mv -v /usr/bin/killall /bin</userinput></screen>
    6357
    6458  </sect2>
  • chapter08/readline.xml

    r0f7d4cb rd7a9421  
    9595<screen><userinput remap="install">make SHLIB_LIBS="-lncursesw" install</userinput></screen>
    9696
    97     <para>Now move the dynamic libraries to a more appropriate location
    98     and fix up symbolic links:</para>
    99 
    100 <screen><userinput remap="install">mv -v /usr/lib/lib{readline,history}.so.* /lib
    101 ln -sfv ../../lib/$(readlink /usr/lib/libreadline.so) /usr/lib/libreadline.so
    102 ln -sfv ../../lib/$(readlink /usr/lib/libhistory.so ) /usr/lib/libhistory.so</userinput></screen>
    103 
    10497    <para>If desired, install the documentation:</para>
    10598
  • chapter08/revisedchroot.xml

    r0f7d4cb rd7a9421  
    2424    HOME=/root TERM="$TERM"            \
    2525    PS1='(lfs chroot) \u:\w\$ '        \
    26     PATH=/bin:/usr/bin:/sbin:/usr/sbin \
     26    PATH=/usr/bin:/usr/sbin            \
    2727    /bin/bash --login</userinput></screen>
    2828
  • chapter08/sed.xml

    r0f7d4cb rd7a9421  
    4343    <para>Prepare Sed for compilation:</para>
    4444
    45 <screen><userinput remap="configure">./configure --prefix=/usr --bindir=/bin</userinput></screen>
     45<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
    4646
    4747    <para>Compile the package and generate the HTML documentation:</para>
  • chapter08/shadow.xml

    r0f7d4cb rd7a9421  
    6666    the obsolete <filename class="directory">/var/spool/mail</filename> location
    6767    for user mailboxes that Shadow uses by default to the <filename
    68     class="directory">/var/mail</filename> location used currently:</para>
     68    class="directory">/var/mail</filename> location used currently. And,
     69    get rid of <filename class="directory">/bin</filename> and
     70    <filename class="directory">/sbin</filename> from <envar>PATH</envar>,
     71    since they are simply symlinks to their counterpart in
     72    <filename class="directory">/usr</filename>.</para>
     73
     74    <note>
     75      <para>If <filename class="directory">/bin</filename> and/or
     76      <filename class="directory">/sbin</filename> are prefereed to be
     77      left over in <envar>PATH</envar> for some reason, modify
     78      <envar>PATH</envar> in <filename>.bashrc</filename> after LFS is
     79      built.</para>
     80    </note>
    6981
    7082<screen><userinput remap="pre">sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD SHA512:' \
    7183    -e 's:/var/spool/mail:/var/mail:'                 \
     84    -e '/PATH=/{s@/sbin:@@;s@/bin:@@}'                \
    7285    -i etc/login.defs</userinput></screen>
    7386
     
    119132
    120133<screen><userinput remap="install">make install</userinput></screen>
    121     <!--
    122     <para>Move a misplaced program to its proper location:</para>
    123 
    124 <screen><userinput remap="install">mv -v /usr/bin/passwd /bin</userinput></screen>
    125     -->
    126 
    127     <!-- <para>Move Shadow's libraries to more appropriate locations:</para>
    128 
    129 <screen><userinput remap="install">mv -v /lib/libshadow.*a /usr/lib
    130 rm -v /lib/libshadow.so
    131 ln -sfv ../../lib/libshadow.so.0 /usr/lib/libshadow.so</userinput></screen> -->
    132134
    133135  </sect2>
  • chapter08/strippingagain.xml

    r0f7d4cb rd7a9421  
    3434
    3535<!--<screen><userinput>save_lib="ld-2.25.so libc-2.25.so libpthread-2.25.so libthread_db-1.0.so"-->
    36 <screen><userinput>save_lib="ld-&glibc-version;.so libc-&glibc-version;.so libpthread-&glibc-version;.so libthread_db-&libthread_db-version;.so"
    37 
    38 cd /lib
    39 
    40 for LIB in $save_lib; do
    41     objcopy --only-keep-debug $LIB $LIB.dbg
    42     strip --strip-unneeded $LIB
    43     objcopy --add-gnu-debuglink=$LIB.dbg $LIB
    44 done   
    45 
    46 save_usrlib="libquadmath.so.&libquadmath-version; libstdc++.so.&libstdcpp-version;
     36<screen><userinput>save_usrlib="ld-&glibc-version;.so libc-&glibc-version;.so libpthread-&glibc-version;.so libthread_db-&libthread_db-version;.so
     37             libquadmath.so.&libquadmath-version; libstdc++.so.&libstdcpp-version;
    4738             libitm.so.&libitm-version; libatomic.so.&libatomic-version;" <!-- libcilkrts.so.&libcilkrts-version;-->
    4839
     
    5546done
    5647
    57 unset LIB save_lib save_usrlib</userinput></screen>
     48unset LIB save_usrlib</userinput></screen>
    5849
    5950<!--  <para>Before performing the stripping, take special care to ensure that
     
    6859   -exec strip --strip-debug {} ';'
    6960
    70 find /lib /usr/lib -type f -name \*.so* ! -name \*dbg \
     61find /usr/lib -type f -name \*.so* ! -name \*dbg \
    7162   -exec strip --strip-unneeded {} ';'
    7263
    73 find /{bin,sbin} /usr/{bin,sbin,libexec} -type f \
     64find /usr/{bin,sbin,libexec} -type f \
    7465    -exec strip --strip-all {} ';'</userinput></screen>
    7566
  • chapter08/systemd.xml

    r0f7d4cb rd7a9421  
    4848
    4949    <!-- For linux-5.11's API headers changing the rfkill_event structure -->
    50     <para>First, apply a patch to fix some regressions and fix functionality
    51     with future versions of the kernel:</para>
    52 
    53 <screen><userinput remap="pre">patch -Np1 -i ../systemd-&systemd-version;-upstream_fixes-3.patch</userinput></screen>
     50    <para>First, apply a patch to fix some build issues:</para>
     51
     52<screen><userinput remap="pre">patch -Np1 -i ../systemd-&systemd-version;-upstream_fixes-1.patch</userinput></screen>
    5453
    5554    <para>Remove tests that cannot be built in chroot:</para>
    5655
    57 <screen><userinput remap="pre">sed '181,$ d' -i src/resolve/meson.build</userinput></screen>
     56<screen><userinput remap="pre">sed '177,$ d' -i src/resolve/meson.build</userinput></screen>
    5857
    5958    <para>Remove an unneeded group,
     
    7776      -Dfirstboot=false             \
    7877      -Dinstall-tests=false         \
    79       -Dkmod-path=/bin/kmod         \
    8078      -Dldconfig=false              \
    81       -Dmount-path=/bin/mount       \
    82       -Drootprefix=                 \
    83       -Drootlibdir=/lib             \
    84       -Dsplit-usr=true              \
    85       -Dsulogin-path=/sbin/sulogin  \
    8679      -Dsysusers=false              \
    87       -Dumount-path=/bin/umount     \
    8880      -Db_lto=false                 \
    8981      -Drpmmacrosdir=no             \
     
    9991
    10092      <varlistentry>
    101         <term><parameter>-D*-path=*</parameter></term>
    102         <listitem>
    103           <para>These switches provide the location of binaries needed by
    104           systemd at runtime that have not yet been installed.</para>
    105         </listitem>
    106       </varlistentry>
    107 
    108       <varlistentry>
    10993        <term><parameter>-Ddefault-dnssec=no</parameter></term>
    11094        <listitem>
     
    137121          distributions such as LFS and makes the boot time longer. Remove it
    138122          if the described feature is desired.</para>
    139         </listitem>
    140       </varlistentry>
    141 
    142       <varlistentry>
    143         <term><parameter>-Droot*</parameter></term>
    144         <listitem>
    145           <para>These switches ensure that core programs and
    146           shared libraries are installed in subdirectories
    147           of the root partition.</para>
    148         </listitem>
    149       </varlistentry>
    150 
    151       <varlistentry>
    152         <term><parameter>-Dsplit-usr=true</parameter></term>
    153         <listitem>
    154           <para>This switch ensures that systemd will work on
    155           systems where /bin, /lib and /sbin directories are not
    156           symlinks to their /usr counterparts.</para>
    157123        </listitem>
    158124      </varlistentry>
     
    258224        <seg>bootctl, busctl, coredumpctl, halt (symlink to systemctl),
    259225        hostnamectl, init, journalctl, kernel-install, localectl, loginctl,
    260         machinectl, networkctl, portablectl, poweroff (symlink to
     226        machinectl, networkctl, oomctl, portablectl, poweroff (symlink to
    261227        systemctl), reboot (symlink to systemctl), resolvconf (symlink to
    262228        resolvectl), resolvectl, runlevel (symlink to systemctl), shutdown
    263229        (symlink to systemctl), systemctl, systemd-analyze,
    264230        systemd-ask-password, systemd-cat, systemd-cgls, systemd-cgtop,
    265         systemd-delta, systemd-detect-virt, systemd-dissect, systemd-escape,
    266         systemd-hwdb, systemd-id128, systemd-inhibit, systemd-machine-id-setup,
     231        systemd-cryptenroll, systemd-delta, systemd-detect-virt,
     232        systemd-dissect, systemd-escape, systemd-hwdb, systemd-id128,
     233        systemd-inhibit, systemd-machine-id-setup,
    267234        systemd-mount, systemd-notify, systemd-nspawn, systemd-path,
    268235        systemd-repart, systemd-resolve (symlink to resolvectl), systemd-run,
    269         systemd-socket-activate, systemd-stdio-bridge, systemd-tmpfiles,
    270         systemd-tty-ask-password-agent, systemd-umount (symlink to
    271         systemd-mount), telinit (symlink to systemctl), timedatectl, and
    272         udevadm</seg>
     236        systemd-socket-activate, systemd-stdio-bridge, systemd-sysext,
     237        systemd-tmpfiles, systemd-tty-ask-password-agent,
     238        systemd-umount (symlink to systemd-mount),
     239        telinit (symlink to systemctl), timedatectl, and udevadm</seg>
    273240        <seg>libnss_myhostname.so.2, libnss_mymachines.so.2,
    274241        libnss_resolve.so.2, libnss_systemd.so.2,
    275         libsystemd.so, libsystemd-shared-&systemd-version;.so (in /lib/systemd),
     242        libsystemd.so, libsystemd-shared-&systemd-version;.so (in /usr/lib/systemd),
    276243        and libudev.so</seg>
    277244        <seg>/etc/binfmt.d, /etc/init.d, /etc/kernel, /etc/modules-load.d,
    278245        /etc/sysctl.d, /etc/systemd, /etc/tmpfiles.d, /etc/udev,
    279         /etc/xdg/systemd, /lib/systemd, /lib/udev, /usr/include/systemd,
     246        /etc/xdg/systemd, /usr/lib/systemd, /usr/lib/udev, /usr/include/systemd,
    280247        /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel,
    281248        /usr/lib/modules-load.d, /usr/lib/sysctl.d, /usr/lib/systemd,
     
    424391      </varlistentry>
    425392
     393      <varlistentry id="oomctl">
     394        <term><command>oomctl</command></term>
     395        <listitem>
     396          <para>Controls the systemd Out Of Memory daemon</para>
     397          <indexterm zone="ch-system-systemd oomctl">
     398            <primary sortas="b-oomctl">oomctl</primary>
     399          </indexterm>
     400        </listitem>
     401      </varlistentry>
     402
    426403      <varlistentry id="portablectl">
    427404        <term><command>portablectl</command></term>
     
    569546      </varlistentry>
    570547
     548      <varlistentry id="systemd-cryptenroll">
     549        <term><command>systemd-cryptenroll</command></term>
     550        <listitem>
     551          <para>Is used to enroll or remove a system from full disk encryption,
     552          as well as set and query private keys and recovery keys</para>
     553          <indexterm zone="ch-system-systemd systemd-cryptenroll">
     554            <primary sortas="b-systemd-cryptenroll">systemd-cryptenroll</primary>
     555          </indexterm>
     556        </listitem>
     557      </varlistentry>
     558
    571559      <varlistentry id="systemd-delta">
    572560        <term><command>systemd-delta</command></term>
     
    740728          <indexterm zone="ch-system-systemd systemd-socket-activate">
    741729            <primary sortas="b-systemd-socket-activate">systemd-socket-activate</primary>
     730          </indexterm>
     731        </listitem>
     732      </varlistentry>
     733
     734      <varlistentry id="systemd-sysext">
     735        <term><command>systemd-sysext</command></term>
     736        <listitem>
     737          <para>Creates, deletes, and manages system extensions through the
     738          systemd-sysextd daemon</para>
     739          <indexterm zone="ch-system-systemd systemd-sysext">
     740            <primary sortas="b-systemd-sysext">systemd-sysext</primary>
    742741          </indexterm>
    743742        </listitem>
  • chapter08/tar.xml

    r0f7d4cb rd7a9421  
    4747
    4848<screen><userinput remap="configure">FORCE_UNSAFE_CONFIGURE=1  \
    49 ./configure --prefix=/usr \
    50             --bindir=/bin</userinput></screen>
     49./configure --prefix=/usr</userinput></screen>
    5150
    5251    <variablelist>
  • chapter08/util-linux.xml

    r0f7d4cb rd7a9421  
    4646
    4747<screen revision="sysv"><userinput remap="configure">./configure ADJTIME_PATH=/var/lib/hwclock/adjtime   \
     48            --libdir=/usr/lib    \
    4849            --docdir=/usr/share/doc/util-linux-&util-linux-version; \
    4950            --disable-chfn-chsh  \
     
    6162
    6263<screen revision="systemd"><userinput remap="configure">./configure ADJTIME_PATH=/var/lib/hwclock/adjtime   \
     64            --libdir=/usr/lib    \
    6365            --docdir=/usr/share/doc/util-linux-&util-linux-version; \
    6466            --disable-chfn-chsh  \
  • chapter08/xz.xml

    r0f7d4cb rd7a9421  
    5959<screen><userinput remap="test">make check</userinput></screen>
    6060
    61   <para>Install the package and make sure that all essential files are in the
    62   correct directory:</para>
    63 
    64 <screen><userinput remap="install">make install
    65 mv -v   /usr/bin/{lzma,unlzma,lzcat,xz,unxz,xzcat} /bin
    66 mv -v /usr/lib/liblzma.so.* /lib
    67 ln -svf ../../lib/$(readlink /usr/lib/liblzma.so) /usr/lib/liblzma.so</userinput></screen>
     61    <para>Install the package:</para>
     62
     63<screen><userinput remap="install">make install</userinput></screen>
    6864
    6965  </sect2>
  • chapter08/zlib.xml

    r0f7d4cb rd7a9421  
    5858<screen><userinput remap="install">make install</userinput></screen>
    5959
    60     <para>The shared library needs to be moved to
    61     <filename class="directory">/lib</filename>, and as a result the
    62     <filename class="extension">.so</filename> file in
    63     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    64 
    65 <screen><userinput remap="install">mv -v /usr/lib/libz.so.* /lib
    66 ln -sfv ../../lib/$(readlink /usr/lib/libz.so) /usr/lib/libz.so</userinput></screen>
    67 
    6860    <para>Remove an useless static library:</para>
    6961
  • chapter08/zstd.xml

    r0f7d4cb rd7a9421  
    5555<screen><userinput remap="install">make prefix=/usr install</userinput></screen>
    5656
    57     <para>Remove the static library and move the shared library to
    58     <filename class="directory">/lib</filename>. Also, the
    59     <filename class="extension">.so</filename> file in
    60     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    61 
    62 <screen><userinput remap="install">rm -v /usr/lib/libzstd.a
    63 mv -v /usr/lib/libzstd.so.* /lib
    64 ln -sfv ../../lib/$(readlink /usr/lib/libzstd.so) /usr/lib/libzstd.so</userinput></screen>
     57    <para>Remove the static library:</para>
     58<screen><userinput remap="install">rm -v /usr/lib/libzstd.a</userinput></screen>
    6559
    6660  </sect2>
Note: See TracChangeset for help on using the changeset viewer.