Changes in / [7a72a22:1780e72]
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter01/changelog.xml
r7a72a22 r1780e72 41 41 --> 42 42 <listitem> 43 <para>2023-11-13</para>44 <itemizedlist>45 <listitem>46 <para>[xry111] - Update to elfutils-0.190. Fixes47 <ulink url='&lfs-ticket-root;5373'>#5373</ulink>.</para>48 </listitem>49 <listitem>50 <para>[xry111] - Update to vim-9.0.2103. Addresses51 <ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>52 </listitem>53 <listitem>54 <para>[xry111] - Update to linux-6.6.1. Fixes55 <ulink url='&lfs-ticket-root;5369'>#5369</ulink>.</para>56 </listitem>57 <listitem>58 <para>[xry111] - Update to xz-5.4.5. Fixes59 <ulink url='&lfs-ticket-root;5371'>#5371</ulink>.</para>60 </listitem>61 <listitem>62 <para>[xry111] - Update to iana-etc-20231107. Addresses63 <ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>64 </listitem>65 <listitem>66 <para>[xry111] - Update to gawk-5.3.0. Fixes67 <ulink url='&lfs-ticket-root;5372'>#5372</ulink>.</para>68 </listitem>69 <listitem>70 <para>[xry111] - Update to bash-5.2.21. Fixes71 <ulink url='&lfs-ticket-root;5375'>#5375</ulink>.</para>72 </listitem>73 <listitem>74 <para>[xry111] - Update to iproute2-6.6.0. Fixes75 <ulink url='&lfs-ticket-root;5374'>#5374</ulink>.</para>76 </listitem>77 </itemizedlist>78 </listitem>79 80 <listitem>81 43 <para>2023-11-01</para> 82 44 <itemizedlist> -
chapter02/hostreqs.xml
r7a72a22 r1780e72 55 55 </listitem> 56 56 57 <!-- In Coreutils-8.1 the nproc program is added. --> 58 <listitem> 59 <para><emphasis role="strong">Coreutils-8.1</emphasis></para> 57 <listitem> 58 <para><emphasis role="strong">Coreutils-7.0</emphasis></para> 60 59 </listitem> 61 60 … … 220 219 } 221 220 222 # Coreutils first because --version-sort needs Coreutils >= 7.0223 ver_check Coreutils sort 8.1 || bail "Coreutils too old, stop"221 # Coreutils first because-sort needs Coreutils >= 7.0 222 ver_check Coreutils sort 7.0 || bail "--version-sort unsupported" 224 223 ver_check Bash bash 3.2 225 224 ver_check Binutils ld 2.13.1 … … 261 260 then echo "OK: g++ works"; 262 261 else echo "ERROR: g++ does NOT work"; fi 263 rm -f a.out 264 265 if [ "$(nproc)" = "" ]; then 266 echo "ERROR: nproc is not available or it produces empty output" 267 else 268 echo "OK: nproc reports $(nproc) logical cores are available" 269 fi</literal> 262 rm -f a.out</literal> 270 263 EOF 271 264 -
chapter04/aboutsbus.xml
r7a72a22 r1780e72 38 38 39 39 <note> 40 <para>For many modern systems with multiple processors (or cores) the 41 compilation time for a package can be reduced by performing a "parallel 42 make" by either setting an environment variable or telling the 43 <command>make</command> program how many processors are available. For 44 instance, an Intel i5-6500 CPU can support four simultaneous processes with:</para> 45 46 <screen role="nodump"><userinput>export MAKEFLAGS='-j4'</userinput></screen> 47 48 <para>or by building with:</para> 49 50 <screen role="nodump"><userinput>make -j4</userinput></screen> 51 40 52 <para>When multiple processors are used in this way, the SBU units in the 41 53 book will vary even more than they normally would. In some cases, the make -
chapter04/settingenviron.xml
r7a72a22 r1780e72 196 196 </important> 197 197 198 <para>199 For many modern systems with multiple processors (or cores) the200 compilation time for a package can be reduced by performing a "parallel201 make" by telling the make program how many processors are available via202 a command line option or an environment variable. For instance, an Intel203 Core i9-13900K processor has 8 P (performance) cores and204 16 E (efficiency) cores, and a P core can simultaneously run two threads205 so each P core are modeled as two logical cores by the Linux kernel.206 As the result there are 32 logical cores in total. One obvious way to207 use all these logical cores is allowing <command>make</command> to spawn208 up to 32 build jobs. This can be done by passing the209 <parameter>-j32</parameter> option to <command>make</command>:210 </para>211 212 <screen role='nodump'><userinput>make -j32</userinput></screen>213 214 <para>215 Or set the <envar>MAKEFLAGS</envar> environment variable and its216 content will be automatically used by <command>make</command> as217 command line options:218 </para>219 220 <screen role='nodump'><userinput>export MAKEFLAGS=-j32</userinput></screen>221 222 <important>223 <para>224 Never pass a <parameter>-j</parameter> option without a number to225 <command>make</command> or set such an option in226 <envar>MAKEFLAGS</envar>. Doing so will allow <command>make</command>227 to spawn infinite build jobs and cause system stability issue.228 </para>229 </important>230 231 <para>232 To use all logical cores available for building packages in233 <xref linkend='chapter-cross-tools'/> and234 <xref linkend='chapter-temporary-tools'/>, set <envar>MAKEFLAGS</envar>235 now in <filename>.bashrc</filename>:236 </para>237 238 <screen><userinput>cat >> ~/.bashrc << "EOF"239 <literal>export MAKEFLAGS=-j<replaceable>$(nproc)</replaceable></literal>240 EOF</userinput></screen>241 242 <para>243 Replace <replaceable>$(nproc)</replaceable> with the number of logical244 cores you want to use if you don't want to use all the logical cores.245 </para>246 247 198 <para>Finally, to ensure the environment is fully prepared for building the 248 199 temporary tools, force the <command>bash</command> shell to read -
chapter07/chroot.xml
r7a72a22 r1780e72 24 24 PS1='(lfs chroot) \u:\w\$ ' \ 25 25 PATH=/usr/bin:/usr/sbin \ 26 MAKEFLAGS="-j<replaceable>$(nproc)</replaceable>" \27 TESTSUITEFLAGS="-j<replaceable>$(nproc)</replaceable>" \28 26 /bin/bash --login</userinput></screen> 29 30 <para>31 Again, replace <replaceable>$(nproc)</replaceable> with the number32 of logical cores you want to use for building packages in this chapter33 and the following chapters if you don't want to use all available34 logical cores. The test suites of some packages (notably Autoconf,35 Libtool, and Tar) in &ch-final; are not affected by36 <envar>MAKEFLAGS</envar>, they use a <envar>TESTSUITEFLAGS</envar>37 environment variable instead. So we set it here as well for running38 these test suites with multiple cores.39 </para>40 27 41 28 <para>The <parameter>-i</parameter> option given to the <command>env</command> -
chapter08/automake.xml
r7a72a22 r1780e72 54 54 <screen><userinput remap="make">make</userinput></screen> 55 55 56 <para> Using four parallel jobsspeeds up the tests, even on systems with57 less logical cores, due to internal delays in individual tests. To test56 <para> Using the -j4 make option speeds up the tests, even on systems with 57 only one processor, due to internal delays in individual tests. To test 58 58 the results, issue:</para> 59 59 60 <screen><userinput remap="test">make <replaceable>-j$(($(nproc)>4?$(nproc):4))</replaceable> check</userinput></screen> 61 62 <para>Replace <replaceable>$((...))</replaceable> with the number of 63 logical cores you want to use if you don't want to use all.</para> 60 <screen><userinput remap="test">make -j4 check</userinput></screen> 64 61 65 62 <para>The test t/subobj.sh is known to fail.</para> -
chapter08/openssl.xml
r7a72a22 r1780e72 64 64 <para>To test the results, issue:</para> 65 65 66 <screen><userinput remap="test"> HARNESS_JOBS=<replaceable>$(nproc)</replaceable>make test</userinput></screen>66 <screen><userinput remap="test">make test</userinput></screen> 67 67 68 68 <para>One test, 30-test_afalg.t, is known to fail if the host kernel -
chapter08/perl.xml
r7a72a22 r1780e72 112 112 <para>To test the results (approximately 11 SBU), issue:</para> 113 113 114 <screen><userinput remap="test"> TEST_JOBS=$(nproc) make test_harness</userinput></screen>114 <screen><userinput remap="test">make test</userinput></screen> 115 115 116 116 <para>Install the package and clean up:</para> -
packages.ent
r7a72a22 r1780e72 48 48 <!ENTITY automake-fin-sbu "less than 0.1 SBU (about 7.0 SBU with tests)"> 49 49 50 <!ENTITY bash-version "5.2. 21">51 <!ENTITY bash-size "10,69 6KB">50 <!ENTITY bash-version "5.2.15"> 51 <!ENTITY bash-size "10,695 KB"> 52 52 <!ENTITY bash-url "&gnu;bash/bash-&bash-version;.tar.gz"> 53 <!ENTITY bash-md5 " ad5b38410e3bf0e9bcc20e2765f5e3f9">53 <!ENTITY bash-md5 "4281bb43497f3905a308430a8d6a30a5"> 54 54 <!ENTITY bash-home "&gnu-software;bash/"> 55 55 <!ENTITY bash-tmp-du "67 MB"> … … 149 149 <!ENTITY e2fsprogs-fin-sbu "2.4 SBU on a spinning disk, 0.6 SBU on an SSD"> 150 150 151 <!ENTITY elfutils-version "0.1 90"> <!-- libelf -->152 <!ENTITY elfutils-size "8,9 49KB">151 <!ENTITY elfutils-version "0.189"> <!-- libelf --> 152 <!ENTITY elfutils-size "8,936 KB"> 153 153 <!ENTITY elfutils-url "https://sourceware.org/ftp/elfutils/&elfutils-version;/elfutils-&elfutils-version;.tar.bz2"> 154 <!ENTITY elfutils-md5 " 79ad698e61a052bea79e77df6a08bc4b">154 <!ENTITY elfutils-md5 "5cfaa711a90cb670406cd495aeaa6030"> 155 155 <!ENTITY elfutils-home "https://sourceware.org/elfutils/"> 156 156 <!ENTITY elfutils-fin-du "122 MB"> … … 209 209 <!ENTITY flit-core-fin-sbu "less than 0.1 SBU"> 210 210 211 <!ENTITY gawk-version "5. 3.0">212 <!ENTITY gawk-size "3,3 56KB">211 <!ENTITY gawk-version "5.2.2"> 212 <!ENTITY gawk-size "3,324 KB"> 213 213 <!ENTITY gawk-url "&gnu;gawk/gawk-&gawk-version;.tar.xz"> 214 <!ENTITY gawk-md5 " 97c5a7d83f91a7e1b2035ebbe6ac7abd">214 <!ENTITY gawk-md5 "d63b4de2c722cbd9b8cc8e6f14d78a1e"> 215 215 <!ENTITY gawk-home "&gnu-software;gawk/"> 216 216 <!ENTITY gawk-tmp-du "48 MB"> … … 318 318 <!ENTITY gzip-fin-sbu "0.3 SBU"> 319 319 320 <!ENTITY iana-etc-version "20231 107">321 <!ENTITY iana-etc-size "58 9KB">320 <!ENTITY iana-etc-version "20231026"> 321 <!ENTITY iana-etc-size "588 KB"> 322 322 <!ENTITY iana-etc-url "https://github.com/Mic92/iana-etc/releases/download/&iana-etc-version;/iana-etc-&iana-etc-version;.tar.gz"> 323 <!ENTITY iana-etc-md5 " 01331998d26d5beb592c12b06b2eeb24">323 <!ENTITY iana-etc-md5 "87e127b8f5ce7f2daa7b4afa1c147465"> 324 324 <!ENTITY iana-etc-home "https://www.iana.org/protocols"> 325 325 <!ENTITY iana-etc-fin-du "4.8 MB"> … … 342 342 <!ENTITY intltool-fin-sbu "less than 0.1 SBU"> 343 343 344 <!ENTITY iproute2-version "6. 6.0">345 <!ENTITY iproute2-size " 897KB">344 <!ENTITY iproute2-version "6.5.0"> 345 <!ENTITY iproute2-size "908 KB"> 346 346 <!ENTITY iproute2-url "&kernel;linux/utils/net/iproute2/iproute2-&iproute2-version;.tar.xz"> 347 <!ENTITY iproute2-md5 " 6716fc3188dbea226997fa2478a190d7">347 <!ENTITY iproute2-md5 "ae811fc51b3a2c9c7701be308152c45a"> 348 348 <!ENTITY iproute2-home "&kernel;linux/utils/net/iproute2/"> 349 349 <!ENTITY iproute2-fin-du "17 MB"> … … 431 431 432 432 <!ENTITY linux-major-version "6"> 433 <!ENTITY linux-minor-version " 6">434 <!ENTITY linux-patch-version " 1">433 <!ENTITY linux-minor-version "5"> 434 <!ENTITY linux-patch-version "9"> 435 435 <!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">--> 436 436 <!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;"> 437 <!ENTITY linux-size "13 6,730KB">437 <!ENTITY linux-size "135,718 KB"> 438 438 <!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz"> 439 <!ENTITY linux-md5 "9 0291279ca684fb8cfa59b2ae75b6fe0">439 <!ENTITY linux-md5 "9e187b3c0cd0e29d151a1bd72c66f78f"> 440 440 <!ENTITY linux-home "https://www.kernel.org/"> 441 441 <!-- measured for 6.5.3 / gcc-13.2.0 on x86_64 with -j4 : minimum is … … 736 736 <!ENTITY util-linux-fin-sbu "0.5 SBU"> 737 737 738 <!ENTITY vim-version "9.0. 2103">738 <!ENTITY vim-version "9.0.1968"> 739 739 <!-- <!ENTITY vim-majmin "90"> --> 740 740 <!ENTITY vim-docdir "vim/vim90"> 741 <!ENTITY vim-size "1 1,193KB">741 <!ENTITY vim-size "16,909 KB"> 742 742 <!--<!ENTITY vim-url "https://github.com/vim/vim/archive/v&vim-version;/vim-&vim-version;.tar.gz">--> 743 <!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar. xz">744 <!ENTITY vim-md5 " 1af1d018026234d085a82348703461ce">743 <!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar.gz"> 744 <!ENTITY vim-md5 "66147348ba84ea9c78b9d6595015f5a6"> 745 745 <!ENTITY vim-home "https://www.vim.org"> 746 746 <!ENTITY vim-fin-du "229 MB"> … … 763 763 <!ENTITY xml-parser-fin-sbu "less than 0.1 SBU"> 764 764 765 <!ENTITY xz-version "5.4. 5">766 <!ENTITY xz-size "1,6 42KB">765 <!ENTITY xz-version "5.4.4"> 766 <!ENTITY xz-size "1,623 KB"> 767 767 <!ENTITY xz-url "https://tukaani.org/xz/xz-&xz-version;.tar.xz"> 768 <!ENTITY xz-md5 " 1d33e0be05c53e7a5641acf5c8b35fdd">768 <!ENTITY xz-md5 "d83d6f64a64f88759e312b8a38c3add6"> 769 769 <!ENTITY xz-home "https://tukaani.org/xz"> 770 770 <!ENTITY xz-tmp-du "22 MB">
Note:
See TracChangeset
for help on using the changeset viewer.