// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-== Advanced usage
+=== Advanced usage
include::using-buildroot-toolchain.txt[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Appendix
-
include::makedev-syntax.txt[]
include::makeusers-syntax.txt[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Beyond Buildroot
+== Beyond Buildroot
-== Boot the generated images
+=== Boot the generated images
-=== NFS boot
+==== NFS boot
To achieve NFS-boot, enable _tar root filesystem_ in the _Filesystem
images_ menu.
Then, you can execute a NFS-boot from your target.
-== Chroot
+=== Chroot
If you want to chroot in a generated image, then there are few thing
you should be aware of:
// vim: set syntax=asciidoc:
[[ccache]]
-=== Using +ccache+ in Buildroot
+==== Using +ccache+ in Buildroot
http://ccache.samba.org[ccache] is a compiler cache. It stores the
object files resulting from each compilation process, and is able to
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Contributing to Buildroot
+== Contributing to Buildroot
There are many ways in which you can contribute to Buildroot: analyzing
and fixing bugs, analyzing and fixing package build failures detected by
send your patches to the mailing list. Refer to xref:getting-buildroot[]
for more information on obtaining a Buildroot git tree.
-== Reproducing, analyzing and fixing bugs
+=== Reproducing, analyzing and fixing bugs
A first way of contributing is to have a look at the open bug reports in
the https://bugs.busybox.net/buglist.cgi?product=buildroot[Buildroot bug
welcome. Don't hesitate to add a comment to bug reports reporting your
findings, even if you don't yet see the full picture.
-== Analyzing and fixing autobuild failures
+=== Analyzing and fixing autobuild failures
The Buildroot autobuilders are a set of build machines that continuously
run Buildroot builds based on random configurations. This is done for
Fixes http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069
---------------------
-== Reviewing and testing patches
+=== Reviewing and testing patches
With the amount of patches sent to the mailing list each day, the
maintainer has a very hard job to judge which patches are ready to apply
purposes. Please see xref:apply-patches-patchwork[] for more
information on using Buildroot's Patchwork website to apply patches.
-== Work on items from the TODO list
+=== Work on items from the TODO list
If you want to contribute to Buildroot but don't know where to start,
and you don't like any of the above topics, you can always work on items
avoid duplicate efforts.
[[submitting-patches]]
-== Submitting patches
+=== Submitting patches
[NOTE]
_Please, do not attach patches to bugs, send them to the mailing list
line-wrapped*, otherwise they cannot easily be applied. In such a case,
fix your e-mail client, or better yet, learn to use +git send-email+.
-=== Cover letter
+==== Cover letter
If you want to present the whole patch set in a separate mail, add
+--cover-letter+ to the +git format-patch+ command (see +man
* whenever you feel it will help presenting your work, your choices,
the review process, etc.
-=== Patch revision changelog
+==== Patch revision changelog
When improvements are requested, the new revision of each commit
should include a changelog of the modifications between each
---------------------
[[reporting-bugs]]
-== Reporting issues/bugs or getting help
+=== Reporting issues/bugs or getting help
Before reporting any issue, please check
xref:mailing-list-subscribe[the mailing list archive] in case someone has
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Developer Guidelines
-
include::writing-rules.txt[]
include::adding-packages.txt[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-=== Location of downloaded packages
+==== Location of downloaded packages
The various tarballs that are downloaded by Buildroot are all stored
in +BR2_DL_DIR+, which by default is the +dl+ directory. If you want
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Frequently Asked Questions & Troubleshooting
+== Frequently Asked Questions & Troubleshooting
[[faq-boot-hang-after-starting]]
-== The boot hangs after 'Starting network...'
+=== The boot hangs after 'Starting network...'
If the boot process seems to hang after the following messages
(messages not necessarily exactly similar, depending on the list of
generated system so that a shell starts on the correct serial port.
[[faq-no-compiler-on-target]]
-== Why is there no compiler on the target?
+=== Why is there no compiler on the target?
It has been decided that support for the _native compiler on the
target_ would be stopped from the Buildroot-2012.11 release because:
* ...
[[faq-no-dev-files-on-target]]
-== Why are there no development files on the target?
+=== Why are there no development files on the target?
Since there is no compiler available on the target (see
xref:faq-no-compiler-on-target[]), it does not make sense to waste
Buildroot-2012.11 release.
[[faq-no-doc-on-target]]
-== Why is there no documentation on the target?
+=== Why is there no documentation on the target?
Because Buildroot mostly targets _small_ or _very small_ target
hardware with limited resource onboard (CPU, ram, mass-storage), it
distribution_ (see: xref:faq-no-compiler-on-target[]).
[[faq-why-not-visible-package]]
-== Why are some packages not visible in the Buildroot config menu?
+=== Why are some packages not visible in the Buildroot config menu?
If a package exists in the Buildroot tree and does not appear in the
config menu, this most likely means that some of the package's
more explanations).
[[faq-why-not-use-target-as-chroot]]
-== Why not use the target directory as a chroot directory?
+=== Why not use the target directory as a chroot directory?
There are plenty of reasons to *not* use the target directory a chroot
one, among these:
as root.
[[faq-no-binary-packages]]
-== Why doesn't Buildroot generate binary packages (.deb, .ipkg...)?
+=== Why doesn't Buildroot generate binary packages (.deb, .ipkg...)?
One feature that is often discussed on the Buildroot list is the
general topic of "package management". To summarize, the idea
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Getting involved
+== Getting involved
Like any open source project, Buildroot has different ways to share
information in its community and outside.
Each of those ways may interest you if you are looking for some help,
want to understand Buildroot or contribute to the project.
-== Mailing List
+=== Mailing List
Buildroot has a mailing list
http://lists.busybox.net/pipermail/buildroot[] for discussion and
[[mailing-list-subscribe]]
-=== Subscribing to the mailing list
+==== Subscribing to the mailing list
You can subscribe by visiting
http://lists.busybox.net/mailman/listinfo/buildroot[].
+gmane.comp.lib.uclibc.buildroot+
http://dir.gmane.org/gmane.comp.lib.uclibc.buildroot[].
-=== Searching the List Archives
+==== Searching the List Archives
Please search the mailing list archives before asking questions on the
mailing list, since there is a good chance someone else has asked the
same question before. Checking the archives is a great way to avoid
annoying everyone on the list with frequently asked questions...
-== IRC
+=== IRC
The Buildroot IRC is irc://freenode.net/#buildroot[].
The channel +#buildroot+ is hosted on Freenode
using a code sharing website.
[[patchwork]]
-== Patchwork
+=== Patchwork
Patchwork is a web-based patch tracking system designed to facilitate
the contribution and management of contributions to an open-source
http://patchwork.buildroot.org[].
[[apply-patches-patchwork]]
-=== Applying Patches from Patchwork
+==== Applying Patches from Patchwork
The main use of Buildroot's Patchwork website for a developer is for
pulling in patches into their local git repository for testing
using the above commands.
[[bugtracker]]
-== Bugtracker
+=== Bugtracker
The Buildroot bugtracker is at https://bugs.busybox.net[].
To open a bug, see xref:reporting-bugs[].
-== Buildroot wikipage
+=== Buildroot wikipage
After the Buildroot developer day on February 3, 2012,
a page dedicated to Buildroot has been created on
Currently, this page is mainly used as a _todo-list_.
[[events]]
-== Events
+=== Events
-=== Buildroot Developer Days aside ELC-E 2012 (November 3-4, 2012 - Barcelona)
+==== Buildroot Developer Days aside ELC-E 2012 (November 3-4, 2012 - Barcelona)
* Event page: http://elinux.org/Buildroot:DeveloperDaysELCE2012[]
-=== Buildroot presentation at LSM 2012 (July 12-14, 2012 - Geneva)
+==== Buildroot presentation at LSM 2012 (July 12-14, 2012 - Geneva)
* Announcement: http://lists.busybox.net/pipermail/buildroot/2012-May/053845.html[]
-=== Buildroot Developer Days aside FOSDEM 2012 (February 3, 2012 - Brussels)
+==== Buildroot Developer Days aside FOSDEM 2012 (February 3, 2012 - Brussels)
* Announcement & agenda thread: http://lists.busybox.net/pipermail/buildroot/2012-January/049340.html[]
* Report: http://lists.busybox.net/pipermail/buildroot/2012-February/050371.html[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Going further in Buildroot's innards
+== Going further in Buildroot's innards
include::how-buildroot-works.txt[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-== How Buildroot works
+=== How Buildroot works
As mentioned above, Buildroot is basically a set of Makefiles that
download, configure, and compile software with the correct options. It
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= About Buildroot
+== About Buildroot
Buildroot is a tool that simplifies and automates the process of
building a complete Linux system for an embedded system, using
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Known issues
+== Known issues
* It is not possible to pass extra linker options via +BR2_TARGET_LDFLAGS+
if such options contain a +$+ sign. For example, the following is known
[[legal-info]]
-= Legal notice and licensing
+== Legal notice and licensing
-== Complying with open source licenses
+=== Complying with open source licenses
All of the end products of Buildroot (toolchain, root filesystem, kernel,
bootloaders) contain open source software, released under various licenses.
file to inform you of relevant material that could not be saved.
[[legal-info-list-licenses]]
-== License abbreviations
+=== License abbreviations
Here is a list of the licenses that are most widely used by packages in
Buildroot, with the name used in the manifest files:
http://apache.org/licenses/LICENSE-2.0.html[
Apache License, version 2.0];
-== Complying with the Buildroot license
+=== Complying with the Buildroot license
Buildroot itself is an open source software, released under the
http://www.gnu.org/licenses/old-licenses/gpl-2.0.html[GNU General Public
# The variable <DOCUMENT_NAME>_SOURCES defines the dependencies.
################################################################################
define GENDOC
-$(call GENDOC_INNER,$(pkgname),xhtml,html,html,HTML,--xsltproc-opts "--stringparam toc.section.depth 2")
-$(call GENDOC_INNER,$(pkgname),chunked,split-html,chunked,split HTML,--xsltproc-opts "--stringparam toc.section.depth 2")
+$(call GENDOC_INNER,$(pkgname),xhtml,html,html,HTML,--xsltproc-opts "--stringparam toc.section.depth 1")
+$(call GENDOC_INNER,$(pkgname),chunked,split-html,chunked,split HTML,--xsltproc-opts "--stringparam toc.section.depth 1")
$(call GENDOC_INNER,$(pkgname),pdf,pdf,pdf,PDF,--dblatex-opts "-P latex.output.revhistory=0")
$(call GENDOC_INNER,$(pkgname),text,text,text,text)
$(call GENDOC_INNER,$(pkgname),epub,epub,epub,ePUB)
image::logo.png[]
-:leveloffset: 1
+= Getting started
include::introduction.txt[]
include::starting-up.txt[]
+= User guide
+
include::working-with.txt[]
include::faq-troubleshooting.txt[]
include::going-further.txt[]
-include::developer-guide.txt[]
-
include::legal-notice.txt[]
include::beyond-buildroot.txt[]
+= Developer guide
+
+include::developer-guide.txt[]
+
include::get-involved.txt[]
include::contribute.txt[]
+= Appendix
+
include::appendix.txt[]
[[pkg-build-steps]]
-=== Package-specific _make_ targets
+==== Package-specific _make_ targets
Running +make <package>+ builds and installs that particular package
and its dependencies.
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Starting up
-
include::prerequisite.txt[]
include::getting.txt[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-=== Using +gdb+ in Buildroot
+==== Using +gdb+ in Buildroot
Buildroot allows to do cross-debugging, where the debugger runs on the
build machine and communicates with +gdbserver+ on the target to
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-=== Using Buildroot during development
+==== Using Buildroot during development
The normal operation of Buildroot is to download a tarball, extract
it, configure, compile and install the software component found inside
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-=== Using the generated toolchain outside Buildroot
+==== Using the generated toolchain outside Buildroot
You may want to compile, for your target, your own programs or other
software that are not packaged in Buildroot. In order to do this you
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-= Working with Buildroot
-
This section explains how you can customize Buildroot to fit your
needs.