source: introduction/welcome/conventions.xml@ fa41dd0b

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since fa41dd0b was 3f2db3a6, checked in by Pierre Labastie <pierre.labastie@…>, 19 months ago

Remove sect1info tags

They only contain a date tag that is nowhere used.

  • Property mode set to 100644
File size: 10.0 KB
RevLine 
[4122007]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[4122007]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6]>
7
[4afc2603]8<sect1 id="conventions">
[2d817d3]9 <?dbhtml filename="conventions.html"?>
[f45b1953]10
11
[8149a43]12 <title>Conventions Used in this Book</title>
[f45b1953]13
[89e6d61]14 <sect2>
15 <title>Typographical Conventions</title>
[1e9ccfa]16 <para>To make things easy to follow, a number of conventions are used
17 throughout the book. Here are some examples:</para>
[f45b1953]18
[2d817d3]19<screen><userinput>./configure --prefix=/usr</userinput></screen>
[f45b1953]20
[2d817d3]21 <blockquote>
[1e9ccfa]22 <para>This form of text should be typed exactly as shown unless
[8aefeb67]23 otherwise noted in the surrounding text. It is also used to identify
24 references to specific commands.</para>
[2d817d3]25 </blockquote>
[f45b1953]26
[a71ee9cb]27<screen><computeroutput>install-info: unknown option
[2d817d3]28`--dir-file=/mnt/lfs/usr/info/dir'</computeroutput></screen>
[f45b1953]29
[2d817d3]30 <blockquote>
[1e9ccfa]31 <para>This form of text (fixed width font) shows screen
32 output, probably the result of issuing a command. It is also used to
[2d817d3]33 show filenames such as <filename>/boot/grub/grub.conf</filename></para>
34 </blockquote>
[f45b1953]35
[2d817d3]36 <para><emphasis>Emphasis</emphasis></para>
[f45b1953]37
[2d817d3]38 <blockquote>
[1e9ccfa]39 <para>This form of text is used for several purposes,
40 but mainly to emphasize important points, or to give examples of
[2d817d3]41 what to type.</para>
42 </blockquote>
[f45b1953]43
[4a570af1]44 <para><ulink url="https://www.&lfs-domainname;/"/></para>
[f45b1953]45
[2d817d3]46 <blockquote>
[6d3d9b3]47 <para>This form of text is used for hypertext links external to
[1e9ccfa]48 the book, such as HowTos, download locations, websites, etc.</para>
[6d3d9b3]49 </blockquote>
50
[b5eb704]51 <para><xref linkend="seamonkey"/></para>
[bccbdaea]52
[6d3d9b3]53 <blockquote>
54 <para>This form of text is used for links internal to
[1e9ccfa]55 the book, such as another section describing a different package.</para>
[2d817d3]56 </blockquote>
[f45b1953]57
[2d817d3]58<screen><userinput>cat &gt; $LFS/etc/group &lt;&lt; "EOF"
59<literal>root:x:0:
60bin:x:1:
61......</literal>
62EOF</userinput></screen>
[aa15d3e]63
[2d817d3]64 <blockquote>
[1e9ccfa]65 <para>This style is mainly used when creating configuration
[8aefeb67]66 files. The first command (in bold) tells the system to create
[a71ee9cb]67 the file <filename>$LFS/etc/group</filename> from whatever is typed on the
[1e9ccfa]68 following lines, until the sequence EOF is encountered.
69 Therefore, this whole section is usually typed exactly as shown.
70 Remember, copy and paste is your friend!</para>
[2d817d3]71 </blockquote>
72
[57b11363]73 <para><replaceable>&lt;REPLACED TEXT&gt;</replaceable></para>
[2d817d3]74
75 <blockquote>
76 <para>This form of text is used to encapsulate text that should be
[1e9ccfa]77 modified, and is not to be typed as shown, or copied and pasted.
78 The angle brackets are not part of the literal text; they are part of the
79 substitution.</para>
[8aefeb67]80 </blockquote>
81
82 <para><systemitem class='username'>root</systemitem></para>
83
84 <blockquote>
[4afc2603]85 <para>This form of text is used to show a specific system user or group
86 reference in the instructions.</para>
[2d817d3]87 </blockquote>
[f45b1953]88
[1e9ccfa]89 <para>&nbsp;</para> <!-- add extra white space to improve readability -->
[89e6d61]90 </sect2>
91
92 <sect2>
93 <title>Conventions Used for Package Dependencies</title>
94
[1e9ccfa]95 <para>When new packages are created, the software's authors depend on prior work. In
96 order to build a package in BLFS, these dependencies must be built before
97 the desired package can be compiled. For each package, prerequisites are listed
[89e6d61]98 in one or more separate sections: Required, Recommended, and Optional.</para>
99
100 <bridgehead renderas="sect3">Required Dependencies</bridgehead>
101
[1e9ccfa]102 <para>These dependencies are the bare minimum needed to
103 build the package. Packages in LFS, and the required
104 dependencies of these required packages, are omitted from this list.
105 Always remember to check for nested dependencies.</para>
[89e6d61]106
107 <bridgehead renderas="sect3">Recommended Dependencies</bridgehead>
[f3429309]108
[1e9ccfa]109 <para>These are dependencies the BLFS editors have determined
[a772d7e1]110 are important to give the package reasonable capabilities. Package
[aee85523]111 installation instructions assume they are installed. If a recommended
[1e9ccfa]112 package is not installed, the instructions may require modification, to
[a772d7e1]113 accommodate the missing package.</para>
[f3429309]114
[89e6d61]115 <bridgehead renderas="sect3">Optional Dependencies</bridgehead>
116
[1e9ccfa]117 <para>These are dependencies the package <emphasis>may</emphasis> use. Integration
118 of optional dependencies may be automatic by the package, or
119 additional steps not presented by BLFS may be necessary. Optional dependencies are
120 sometimes listed without explicit BLFS instructions. In this case you must
121 determine how to perform the installation yourself. </para>
[89e6d61]122
[1e9ccfa]123 <para>&nbsp;</para> <!-- add extra white space to improve readability -->
[89e6d61]124 </sect2>
125
[bfa21f3]126 <sect2>
[340080b]127 <title>Conventions Used for Kernel Configuration Options</title>
128
[1e9ccfa]129 <para>Some packages require specific kernel configuration options.
130 The general layout for these looks like this:</para>
[340080b]131
132<screen><literal>Master section ---&gt;
133 Subsection ---&gt;
134 [*] Required parameter [CONFIG_REQU_PAR]
135 &lt;*&gt; Required parameter (not as module) [CONFIG_REQU_PAR_NMOD]
136 &lt;*/M&gt; Required parameter (could be a module) [CONFIG_REQU_PAR_MOD]
137 &lt;*/M/ &gt; Optional parameter [CONFIG_OPT_PAR]
138 [ ] Incompatible parameter [CONFIG_INCOMP_PAR]
139 &lt; &gt; Incompatible parameter (even as module) [CONFIG_INCOMP_PAR_MOD]</literal></screen>
140
141 <para>[CONFIG_...] on the right gives the name of the option, so you can
[1e9ccfa]142 easily check whether it is set in your <filename>.config</filename> file.
[340080b]143 The meaning of the various entries is:
144
145 <blockquote>
146 <informaltable frame='none'><tgroup cols="2">
147 <colspec align="left"/><colspec align="left"/><tbody>
148 <row>
149 <entry><emphasis role="bold">Master section</emphasis></entry>
150 <entry>top level menu item</entry>
151 </row>
152 <row>
153 <entry><emphasis role="bold">Subsection</emphasis></entry>
154 <entry>submenu item</entry>
155 </row>
156 <row>
157 <entry>
158 <emphasis role="bold">Required parameter</emphasis></entry>
159 <entry>
[1e9ccfa]160 the option can either be built-in, or not selected: it must be
[340080b]161 selected
162 </entry>
163 </row>
164 <row>
165 <entry>
166 <emphasis role="bold">Required parameter (not as
167 module)</emphasis>
168 </entry>
169 <entry>
[1e9ccfa]170 the option can be built-in, a module, or not selected (tri-state):
[340080b]171 it must be selected as built-in
172 </entry>
173 </row>
174 <row>
175 <entry>
176 <emphasis role="bold">Required parameter (could be
177 a module)</emphasis>
178 </entry>
179 <entry>
[1e9ccfa]180 the option can be built-in, a module, or not selected:
181 it must be selected, either as built-in or as a module
[340080b]182 </entry>
183 </row>
184 <row>
185 <entry>
186 <emphasis role="bold">Optional parameter</emphasis>
187 </entry>
188 <entry>
[1e9ccfa]189 rarely used: the option can be built-in, a module, or not
190 selected: it may be set any way you wish
[340080b]191 </entry>
192 </row>
193 <row>
194 <entry>
195 <emphasis role="bold">Incompatible parameter</emphasis>
196 </entry>
197 <entry>
[1e9ccfa]198 the option can either be built-in or not selected: it must
[340080b]199 <emphasis>not</emphasis> be selected
200 </entry>
201 </row>
202 <row>
203 <entry>
204 <emphasis role="bold">Incompatible parameter (even as module)</emphasis>
205 </entry>
206 <entry>
[1e9ccfa]207 the option can be built-in, a module, or not selected:
[340080b]208 it must <emphasis>not</emphasis> be selected
209 </entry>
210 </row>
211 </tbody></tgroup></informaltable>
212 </blockquote>
213 </para>
214
215 <para>Note that, depending on other selections, the angle brackets
[1e9ccfa]216 (&lt;&gt;) in the configuration menu may appear as braces ({}) if the option cannot be unselected,
217 or even as dashes (-*- or -M-), when the choice is imposed.
218 The help text describing the option specifies the other selections on which this
[340080b]219 option relies, and how those other selections are set.</para>
220
[1e9ccfa]221 <para>&nbsp;</para> <!-- add extra white space to improve readability -->
[340080b]222 </sect2>
223
224 <sect2>
[bfa21f3]225 <title>SBU values in BLFS</title>
226
227 <para>As in LFS, each package in BLFS has a build time listed in Standard
228 Build Units (SBUs). These times are relative to the time it took to build
[1e9ccfa]229 binutils in LFS, and are intended to provide some insight into how long it
[bfa21f3]230 will take to build a package. Most times listed are for a single processor
231 or core to build the package. In some cases, large, long running builds
232 tested on multi-core systems have SBU times listed with comments such
233 as '(parallelism=4)'. These values indicate testing was done using
234 multiple cores. Note that while this speeds up the build on systems with
235 the appropriate hardware, the speedup is not linear and to some extent
[1e9ccfa]236 depends on the individual package and the specific hardware used. </para>
[bfa21f3]237
[1e9ccfa]238 <para>For packages which use ninja (i.e., anything using meson) or rust, by
239 default all cores are used; similar comments will be seen on such packages
[406e5ffe]240 even when the build time is minimal.</para>
241
[9640e5c]242 <para>Where even a parallel build takes more than 15 SBU, on certain
243 machines the time may be considerably greater even when the build does not
[406e5ffe]244 use swap. In particular, different micro-architectures will build some
[1e9ccfa]245 files at different relative speeds, and this can introduce delays when
[406e5ffe]246 certain make targets wait for another file to be created. Where a large
247 build uses a lot of C++ files, processors with Simultaneous Multi Threading
248 will share the Floating Point Unit and can take 45% longer than when using
249 four 'prime' cores (measured on an intel i7 using taskset and keeping the
250 other cores idle).</para>
[9640e5c]251
[1e9ccfa]252 <para>Some packages do not support parallel builds; for these, the
253 make command must specify -j1. Packages that are known to impose such limits are
254 so marked in the text.</para>
[d5e120a]255
[bfa21f3]256 </sect2>
257
[aa15d3e]258</sect1>
Note: See TracBrowser for help on using the repository browser.