source: clfs-embedded/BOOK/final-system/common/busybox.xml @ 40d238a

Last change on this file since 40d238a was 40d238a, checked in by Andrew Bradford <andrew@…>, 7 years ago

final-syste/busybox: Fix Note about menuconfig grammar

Thanks to akhiezer <lfs65@…> for pointing this out.

  • Property mode set to 100644
File size: 5.1 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-system-busybox" role="wrap">
9  <?dbhtml filename="busybox.html"?>
10
11  <title>BusyBox-&busybox-version;</title>
12
13  <indexterm zone="ch-system-busybox">
14    <primary sortas="a-BusyBox">BusyBox</primary>
15  </indexterm>
16
17  <sect2 role="package">
18    <title/>
19
20    <para>BusyBox combines tiny versions of many common UNIX utilities into a
21    single small executable. It provides replacements for most of the utilities
22    you usually find in GNU fileutils, shellutils, etc. The utilities in
23    BusyBox generally have fewer options than their full-featured GNU cousins;
24    however, the options that are included provide the expected functionality
25    and behave very much like their GNU counterparts. BusyBox provides
26     a fairly complete environment for any small or embedded system.</para>
27
28  </sect2>
29
30  <sect2 role="installation">
31    <title>Installation of BusyBox</title>
32
33    <para os="a">First ensure the BusyBox source is completely clean:</para>
34
35<screen os="b"><userinput>make distclean</userinput></screen>
36
37    <note os="e"> <para>We tell BusyBox to use the generic defconfig.  For those
38        who are more adventurous, you can use <command>make menuconfig</command>,
39        and create a custom or modified configuration for your build.</para>
40    </note>
41
42    <para os="f">The following tells BusyBox to use the default
43      configuration:</para>
44
45<screen os="g"><userinput>make ARCH="${CLFS_ARCH}" defconfig</userinput></screen>
46
47    <para os="fa">Disable building both ifplugd and inetd as they both have
48      issues building against musl:</para>
49
50<screen os="fb"><userinput>sed -i 's/\(CONFIG_\)\(.*\)\(INETD\)\(.*\)=y/# \1\2\3\4 is not set/g' .config
51sed -i 's/\(CONFIG_IFPLUGD\)=y/# \1 is not set/' .config</userinput></screen>
52
53    <para os="fc">Disable the use of utmp/wtmp as musl does not support
54            them:</para>
55
56<screen os="fd"><userinput>sed -i 's/\(CONFIG_FEATURE_WTMP\)=y/# \1 is not set/' .config
57sed -i 's/\(CONFIG_FEATURE_UTMP\)=y/# \1 is not set/' .config</userinput></screen>
58
59    <para os="fe">Disable the use of ipsvd for both TCP and UDP as it has issues
60            building against musl (similar to inetd's issues):</para>
61
62<screen os="ff"><userinput>sed -i 's/\(CONFIG_UDPSVD\)=y/# \1 is not set/' .config
63sed -i 's/\(CONFIG_TCPSVD\)=y/# \1 is not set/' .config</userinput></screen>
64
65    <para os="h">Compile the package:</para>
66
67<screen os="i"><userinput>make ARCH="${CLFS_ARCH}" CROSS_COMPILE="${CLFS_TARGET}-"</userinput></screen>
68
69    <para os="j">Install the package:</para>
70
71<screen os="k"><userinput>make ARCH="${CLFS_ARCH}" CROSS_COMPILE="${CLFS_TARGET}-"\
72  CONFIG_PREFIX="${CLFS}/targetfs" install</userinput></screen>
73
74    <para os="l">If you're going to build your kernel with modules, you will need
75    to make sure <command>depmod.pl</command> is available for your host to
76    execute:</para>
77
78<screen os="m"><userinput>cp -v examples/depmod.pl ${CLFS}/cross-tools/bin
79chmod -v 755 ${CLFS}/cross-tools/bin/depmod.pl</userinput></screen>
80
81  </sect2>
82
83  <sect2 id="contents-busybox" role="content">
84    <title>Contents of BusyBox</title>
85
86    <segmentedlist>
87      <segtitle>Installed programs</segtitle>
88
89      <seglistitem>
90        <seg>To be Written</seg>
91      </seglistitem>
92    </segmentedlist>
93
94<!--
95    <variablelist>
96      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
97      <?dbfo list-presentation="list"?>
98      <?dbhtml list-presentation="table"?>
99
100      <varlistentry id="bash">
101        <term><command>bash</command></term>
102        <listitem>
103          <para>A widely-used command interpreter; it performs many types of
104          expansions and substitutions on a given command line before executing
105          it, thus making this interpreter a powerful tool</para>
106          <indexterm zone="ch-system-bash bash">
107            <primary sortas="b-bash">bash</primary>
108          </indexterm>
109        </listitem>
110      </varlistentry>
111
112      <varlistentry id="bashbug">
113        <term><command>bashbug</command></term>
114        <listitem>
115          <para>A shell script to help the user compose and mail standard
116          formatted bug reports concerning <command>bash</command></para>
117          <indexterm zone="ch-system-bash bashbug">
118            <primary sortas="b-bashbug">bashbug</primary>
119          </indexterm>
120        </listitem>
121      </varlistentry>
122
123      <varlistentry id="sh">
124        <term><command>sh</command></term>
125        <listitem>
126          <para>A symlink to the <command>bash</command> program; when invoked
127          as <command>sh</command>, <command>bash</command> tries to mimic the
128          startup behavior of historical versions of <command>sh</command> as
129          closely as possible, while conforming to the POSIX standard as
130          well</para>
131          <indexterm zone="ch-system-bash sh">
132            <primary sortas="b-sh">sh</primary>
133          </indexterm>
134        </listitem>
135      </varlistentry>
136
137    </variablelist>
138-->
139  </sect2>
140
141</sect1>
Note: See TracBrowser for help on using the repository browser.