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

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

Rename musl-libc to just musl

Proper name seems to be just "musl" from the documentation.

  • Property mode set to 100644
File size: 4.7 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    <para os="c">The following patch is needed for musl:</para>
38
39<screen os="d"><userinput>patch -Np1 -i ../&busybox-musl-patch;</userinput></screen>
40
41    <note os="e"> <para>We tell BusyBox to use the generic defconfig.  For those
42        for more adventurous, you can use <command>make menuconfig</command>,
43        and create a custom or modified configuration for your build.</para>
44    </note>
45
46    <para os="f">The following tells BusyBox to use the default
47      configuration:</para>
48
49<screen os="g"><userinput>ARCH="${CLFS_ARCH}" make defconfig</userinput></screen>
50
51    <para os="fa">Disable building both ifplugd and inetd as they both have
52      issues building against musl:</para>
53
54<screen os="fb"><userinput>sed -i 's/\(CONFIG_\)\(.*\)\(INETD\)\(.*\)=y/# \1\2\3\4 is not set/g' .config
55sed -i 's/\(CONFIG_IFPLUGD\)=y/# \1 is not set/' .config</userinput></screen>
56
57    <para os="h">Compile the package:</para>
58
59<screen os="i"><userinput>ARCH="${CLFS_ARCH}" CROSS_COMPILE="${CLFS_TARGET}-" make</userinput></screen>
60
61    <para os="j">Install the package:</para>
62
63<screen os="k"><userinput>ARCH="${CLFS_ARCH}" CROSS_COMPILE="${CLFS_TARGET}-" make  \
64  CONFIG_PREFIX="${CLFS}/targetfs" install</userinput></screen>
65
66    <para os="l">If you're going to build your kernel with modules, you will need
67    to make sure <command>depmod.pl</command> is available:</para>
68
69<screen os="m"><userinput>cp examples/depmod.pl ${CLFS}/cross-tools/bin
70chmod 755 ${CLFS}/cross-tools/bin/depmod.pl</userinput></screen>
71
72  </sect2>
73
74  <sect2 id="contents-busybox" role="content">
75    <title>Contents of BusyBox</title>
76
77    <segmentedlist>
78      <segtitle>Installed programs</segtitle>
79
80      <seglistitem>
81        <seg>To be Written</seg>
82      </seglistitem>
83    </segmentedlist>
84
85<!--
86    <variablelist>
87      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
88      <?dbfo list-presentation="list"?>
89      <?dbhtml list-presentation="table"?>
90
91      <varlistentry id="bash">
92        <term><command>bash</command></term>
93        <listitem>
94          <para>A widely-used command interpreter; it performs many types of
95          expansions and substitutions on a given command line before executing
96          it, thus making this interpreter a powerful tool</para>
97          <indexterm zone="ch-system-bash bash">
98            <primary sortas="b-bash">bash</primary>
99          </indexterm>
100        </listitem>
101      </varlistentry>
102
103      <varlistentry id="bashbug">
104        <term><command>bashbug</command></term>
105        <listitem>
106          <para>A shell script to help the user compose and mail standard
107          formatted bug reports concerning <command>bash</command></para>
108          <indexterm zone="ch-system-bash bashbug">
109            <primary sortas="b-bashbug">bashbug</primary>
110          </indexterm>
111        </listitem>
112      </varlistentry>
113
114      <varlistentry id="sh">
115        <term><command>sh</command></term>
116        <listitem>
117          <para>A symlink to the <command>bash</command> program; when invoked
118          as <command>sh</command>, <command>bash</command> tries to mimic the
119          startup behavior of historical versions of <command>sh</command> as
120          closely as possible, while conforming to the POSIX standard as
121          well</para>
122          <indexterm zone="ch-system-bash sh">
123            <primary sortas="b-sh">sh</primary>
124          </indexterm>
125        </listitem>
126      </varlistentry>
127
128    </variablelist>
129-->
130  </sect2>
131
132</sect1>
Note: See TracBrowser for help on using the repository browser.