source: chapter04/aboutsbus.xml@ ef93b66

11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 bdubbs/gcc13 multilib renodr/libudev-from-systemd trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since ef93b66 was ef93b66, checked in by David Bryant <davidbryant@…>, 19 months ago

Adjust English idiom and clarify directions (chapters 4.5 and 4.6).

  • Property mode set to 100644
File size: 2.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-preps-aboutsbus">
9 <?dbhtml filename="aboutsbus.html"?>
10
11 <title>About SBUs</title>
12
13 <para>Many people would like to know beforehand approximately how long
14 it takes to compile and install each package. Because Linux From
15 Scratch can be built on many different systems, it is impossible to
16 provide absolute time estimates. The biggest package (Glibc) will
17 take approximately 20 minutes on the fastest systems, but could take
18 up to three days on slower systems! Instead of providing actual times,
19 the Standard Build Unit (SBU) measure will be
20 used instead.</para>
21
22 <para>The SBU measure works as follows. The first package to be compiled
23 is binutils in <xref linkend="chapter-cross-tools"/>. The
24 time it takes to compile this package is what we will refer to as the
25 Standard Build Unit or SBU. All other compile times will be expressed in
26 terms of this unit of time.</para>
27
28 <para>For example, consider a package whose compilation time is 4.5
29 SBUs. This means that if your system took 10 minutes to compile and
30 install the first pass of binutils, it will take
31 <emphasis>approximately</emphasis> 45 minutes to build the example package.
32 Fortunately, most build times are shorter than one SBU.</para>
33
34 <para>SBUs are not entirely accurate because they depend on many
35 factors, including the host system's version of GCC. They are provided here
36 to give an estimate of how long it might take to install a package, but the
37 numbers can vary by as much as dozens of minutes in some cases.</para>
38
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
52 <para>When multiple processors are used in this way, the SBU units in the
53 book will vary even more than they normally would. In some cases, the make
54 step will simply fail. Analyzing the output of the build process will also
55 be more difficult because the lines from different processes will be
56 interleaved. If you run into a problem with a build step, revert to a
57 single processor build to properly analyze the error messages.</para>
58 </note>
59
60</sect1>
61
Note: See TracBrowser for help on using the repository browser.