source: prologue/standards.xml@ a77130c

xry111/loongarch
Last change on this file since a77130c was d77b09e, checked in by Xi Ruoyao <xry111@…>, 36 hours ago

standards: Fix it up to date

The info has been severly outdated. And some info is even incorrect
from day one, for example even Glibc and GCC are not listed for LSB core
(they provide libc.so.6, libstdc++.so.6, etc.).

  • Property mode set to 100644
File size: 8.0 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
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="pre-standards">
9 <?dbhtml filename="standards.html"?>
10
11 <title>LFS and Standards</title>
12
13 <!--<sect2>
14 <title/> -->
15
16 <para>The structure of LFS follows Linux standards as closely as
17 possible. The primary standards are:</para>
18
19 <itemizedlist>
20 <listitem>
21 <para><ulink url="https://pubs.opengroup.org/onlinepubs/9699919799/">
22 POSIX.1-2008</ulink>.</para>
23 </listitem>
24 <listitem>
25 <para><ulink
26 url="https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html">
27 Filesystem Hierarchy Standard (FHS) Version 3.0</ulink></para>
28
29 </listitem>
30 <listitem>
31 <para><ulink url="https://refspecs.linuxfoundation.org/lsb.shtml">Linux
32 Standard Base (LSB) Version 5.0 (2015)</ulink></para>
33
34 <para>The LSB has four separate specifications: Core, Desktop,
35 Languages, and Imaging. Some parts of Core and Desktop
36 specifications are architecture specific. There are also two trial
37 specifications: Gtk3 and Graphics. LFS attempts to conform to the LSB
38 specifications for the IA32 (32-bit x86) or AMD64 (x86_64)
39 architectures discussed in the previous section.</para>
40
41 <note><para>Many people do not agree with these requirements.
42 The main purpose of the LSB is to ensure that proprietary software
43 can be installed and run on a compliant system.
44 Since LFS is source based, the user has complete control over what
45 packages are desired; you may choose not to install some packages that
46 are specified by the LSB.</para></note>
47
48 </listitem>
49 </itemizedlist>
50
51 <para>While it is possible to create a complete system that will pass the LSB
52 certification tests <quote>from scratch,</quote> this can't be done without many additional packages
53 that are beyond the scope of the LFS book. Installation instructions for some of these
54 additional packages can be found in BLFS. </para>
55
56 <variablelist>
57 <bridgehead renderas="sect3">Packages supplied by LFS needed to
58 satisfy the LSB Requirements</bridgehead>
59 <?dbfo list-presentation="list"?>
60 <?dbhtml list-presentation="table"?>
61
62 <varlistentry>
63 <term><emphasis>LSB Core:</emphasis></term>
64 <listitem>
65 <para>
66 Bash, Bc, Binutils, Coreutils, Diffutils, File, Findutils, Gawk,
67 GCC, Gettext, Glibc, Grep, Gzip, M4, Man-DB, Procps, Psmisc,
68 Sed, Shadow, <phrase revision='sysv'>SysVinit</phrase><phrase
69 revision='systemd'>Systemd</phrase>, Tar, Util-linux, Zlib
70 </para>
71 </listitem>
72 </varlistentry>
73
74 <varlistentry>
75 <term><emphasis>LSB Desktop:</emphasis></term>
76 <listitem>
77 <para>None</para>
78 </listitem>
79 </varlistentry>
80
81 <varlistentry>
82 <term><emphasis>LSB Languages:</emphasis></term>
83 <listitem>
84 <para>Perl</para>
85 </listitem>
86 </varlistentry>
87
88 <varlistentry>
89 <term><emphasis>LSB Imaging:</emphasis></term>
90 <listitem>
91 <para>None</para>
92 </listitem>
93 </varlistentry>
94
95 <varlistentry>
96 <term><emphasis>LSB Gtk3 and LSB Graphics (Trial Use):</emphasis></term>
97 <listitem>
98 <para>None</para>
99 </listitem>
100 </varlistentry>
101
102 </variablelist>
103
104 <variablelist>
105 <bridgehead renderas="sect3">Packages supplied by BLFS needed to
106 satisfy the LSB Requirements</bridgehead>
107 <?dbfo list-presentation="list"?>
108 <?dbhtml list-presentation="table"?>
109
110 <varlistentry>
111 <term><emphasis>LSB Core:</emphasis></term>
112 <listitem>
113 <para>At, Batch (a part of At), BLFS Bash Startup Files, Cpio, Ed,
114 Fcrontab, LSB-Tools, NSPR, NSS, Linux-PAM, Pax, Sendmail
115 (or Postfix or Exim), Time
116 </para>
117 </listitem>
118 </varlistentry>
119
120 <varlistentry>
121 <term><emphasis>LSB Desktop:</emphasis></term>
122 <listitem>
123 <para>Alsa, ATK, Cairo, Desktop-file-utils, Freetype, Fontconfig,
124 Gdk-pixbuf, Glib2, GLU, Icon-naming-utils, Libjpeg-turbo,
125 Libxml2, Mesa, Pango, Xdg-utils, Xorg</para>
126 </listitem>
127 </varlistentry>
128
129 <varlistentry>
130 <term><emphasis>LSB Languages:</emphasis></term>
131 <listitem>
132 <para>Libxml2, Libxslt</para>
133 </listitem>
134 </varlistentry>
135
136 <varlistentry>
137 <term><emphasis>LSB Imaging:</emphasis></term>
138 <listitem>
139 <para>CUPS, Cups-filters, Ghostscript, SANE</para>
140 </listitem>
141 </varlistentry>
142
143 <varlistentry>
144 <term><emphasis>LSB Gtk3 and LSB Graphics (Trial Use):</emphasis></term>
145 <listitem>
146 <para>GTK+3</para>
147 </listitem>
148 </varlistentry>
149
150 </variablelist>
151
152 <variablelist>
153 <bridgehead renderas="sect3">Components not supplied or optionally
154 supplied by LFS or BLFS needed to satisfy the LSB
155 Requirements</bridgehead>
156 <?dbfo list-presentation="list"?>
157 <?dbhtml list-presentation="table"?>
158
159 <varlistentry>
160 <term><emphasis>LSB Core:</emphasis></term>
161 <listitem>
162 <para>
163 <command>install_initd</command>,
164 <filename class='libraryfile'>libcrypt.so.1</filename>
165 (can be provided with optional instructions for the LFS
166 Libxcrypt package),
167 <filename class='libraryfile'>libncurses.so.5</filename>
168 (can be provided with optional instructions for the LFS
169 Ncurses package),
170 <filename class='libraryfile'>libncursesw.so.5</filename>
171 (but <filename class='libraryfile'>libncursesw.so.6</filename>
172 is provided by the LFS Ncurses package)
173 </para>
174 </listitem>
175 </varlistentry>
176
177 <varlistentry>
178 <term><emphasis>LSB Desktop:</emphasis></term>
179 <listitem>
180 <para>
181 <filename class='libraryfile'>libgdk-x11-2.0</filename>
182 (but <filename class='libraryfile'>libgdk-3.so</filename>
183 is provided by the BLFS GTK+-3 package),
184 <filename class='libraryfile'>libgtk-x11-2.0</filename>
185 (but <filename class='libraryfile'>libgtk-3.so</filename>
186 and <filename class='libraryfile'>libgtk-4.so</filename>
187 are provided by the BLFS GTK+-3 and GTK-4 packages),
188 <filename class='libraryfile'>libpng12.so</filename>
189 (but <filename class='libraryfile'>libpng16.so</filename>
190 is provided by the BLFS Libpng package),
191 <filename class='libraryfile'>libQt*.so.4</filename>
192 (but <filename class='libraryfile'>libQt6*.so.6</filename>
193 are provided by the BLFS Qt6 package),
194 <filename class='libraryfile'>libtiff.so.4</filename>
195 (but <filename class='libraryfile'>libtiff.so.6</filename>
196 is provided by the BLFS Libtiff package)
197 </para>
198 </listitem>
199 </varlistentry>
200
201 <varlistentry>
202 <term><emphasis>LSB Languages:</emphasis></term>
203 <listitem>
204 <para><command>/usr/bin/python</command> (LSB requires Python2 but
205 LFS and BLFS only provide Python3)</para>
206 </listitem>
207 </varlistentry>
208
209 <varlistentry>
210 <term><emphasis>LSB Imaging:</emphasis></term>
211 <listitem>
212 <para>None</para>
213 </listitem>
214 </varlistentry>
215
216 <varlistentry>
217 <term><emphasis>LSB Gtk3 and LSB Graphics (Trial Use):</emphasis></term>
218 <listitem>
219 <para>
220 <filename class='libraryfile'>libpng15.so</filename>
221 (but <filename class='libraryfile'>libpng16.so</filename>
222 is provided by the BLFS Libpng package)
223 </para>
224 </listitem>
225 </varlistentry>
226
227 </variablelist>
228
229</sect1>
230
Note: See TracBrowser for help on using the repository browser.