docs/manual: add FAQ entry about speeding up the build process
PATCH v2 1/1 docs/manual: add FAQ entry about speeding up the build process
This is a very frequently asked question, so let's add a FAQ entry about it, that we can progressively extend with more advices for our users.
---
Changes since v1:
- Take into account the feedback from Yann, provided in
http://patchwork.ozlabs.org/patch/397717/. The only place where I tend to disagree a bit is on having the download folder on the network. It does have an impact, albeit small. So I've changed the phrasing to insist on *not* doing an NFS build, and suggesting to also have a local download directory.
--- docs/manual/faq-troubleshooting.txt | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+)
docs/manual/faq-troubleshooting.txt +34 -0
@@ -205,3 +205,37 @@ On this matter, the Buildroot developers make this position statement: upgrades by upgrading the entire root filesystem image at once, the image deployed to the embedded system is guaranteed to really be the one that has been tested and validated. + +[[faq-speeding-up-build]] +=== How to speed-up the build process? + +Since Buildroot often involves doing full rebuilds of the entire +system that can be quite long, we provide below a number of tips to +help reduce the build time: + + * Use a pre-built external toolchain instead of the default Buildroot + internal toolchain. By using a pre-built Linaro toolchain (on ARM) + or a Sourcery CodeBench toolchain (for ARM, x86, x86-64, MIPS, + etc.), you will save the build time of the toolchain at each + complete rebuild, approximately 15 to 20 minutes. Note that + temporarily using an external toolchain does not prevent you to + switch back to an internal toolchain (that may provide a higher + level of customization) once the rest of your system is working; + + * Use the +ccache+ compiler cache (see: xref:ccache[]); + + * Learn about rebuilding only the few packages you actually care + about (see xref:rebuild-pkg[]), but beware that sometimes full + rebuilds are anyway necessary (see xref:full-rebuild[]); + + * Make sure you are not using a virtual machine for the Linux system + used to run Buildroot. Most of the virtual machine technologies are + known to cause a significant performance impact on I/O, which is + really important for building source code; + + * Make sure that you're using only local files: do not attempt to do + a build over NFS, which significantly slows down the build. Having + the Buildroot download folder available locally also helps a bit. + + * Buy, or convince your boss to new hardware. SSDs and lots of RAM + are key to speeding up the builds.
Signature · 1 line
2.1.0
PATCH v2 1/1 docs/manual: add FAQ entry about speeding up the build process
Hi Thomas,
Quoted 2 lines · Thomas Petazzoni
+ * Buy, or convince your boss to new hardware. SSDs and lots of RAM
+ are key to speeding up the builds.
"Buy, or convince your boss to buy new hardware" (added 'buy'). Alternatively:
"Buy new hardware, or convince your boss to do so".
baruch
Signature · 3 lines
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -PATCH v2 1/1 docs/manual: add FAQ entry about speeding up the build process
In reply to Thomas PetazzoniThomas, All,
On 2015-01-14 22:48 +0100, Thomas Petazzoni spake thusly:
Quoted 5 lines
This is a very frequently asked question, so let's add a FAQ entry about it, that we can progressively extend with more advices for our users.
Signed-off-by Thomas Petazzoni <[email protected]>
Except for the nit Baruch noticed:
Quoted 9 lines
---
Changes since v1:- Take into account the feedback from Yann, provided in
http://patchwork.ozlabs.org/patch/397717/. The only place where I tend to disagree a bit is on having the download folder on the network. It does have an impact, albeit small. So I've changed the phrasing to insist on *not* doing an NFS build, and suggesting to also have a local download directory.
I like how you rephrased it. Thanks! :-)
Regards,
Yann E. MORIN.
Quoted 54 lines
Signed-off-by Thomas Petazzoni <[email protected]>--- docs/manual/faq-troubleshooting.txt | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+)docs/manual/faq-troubleshooting.txt +34
-0@@ -205,3 +205,37 @@ On this matter, the Buildroot developers make this position statement: upgrades by upgrading the entire root filesystem image at once, the image deployed to the embedded system is guaranteed to really be the one that has been tested and validated. + +[[faq-speeding-up-build]] +=== How to speed-up the build process? + +Since Buildroot often involves doing full rebuilds of the entire +system that can be quite long, we provide below a number of tips to +help reduce the build time: + + * Use a pre-built external toolchain instead of the default Buildroot + internal toolchain. By using a pre-built Linaro toolchain (on ARM) + or a Sourcery CodeBench toolchain (for ARM, x86, x86-64, MIPS, + etc.), you will save the build time of the toolchain at each + complete rebuild, approximately 15 to 20 minutes. Note that + temporarily using an external toolchain does not prevent you to + switch back to an internal toolchain (that may provide a higher + level of customization) once the rest of your system is working; + + * Use the +ccache+ compiler cache (see: xref:ccache[]); + + * Learn about rebuilding only the few packages you actually care + about (see xref:rebuild-pkg[]), but beware that sometimes full + rebuilds are anyway necessary (see xref:full-rebuild[]); + + * Make sure you are not using a virtual machine for the Linux system + used to run Buildroot. Most of the virtual machine technologies are + known to cause a significant performance impact on I/O, which is + really important for building source code; + + * Make sure that you're using only local files: do not attempt to do + a build over NFS, which significantly slows down the build. Having + the Buildroot download folder available locally also helps a bit. + + * Buy, or convince your boss to new hardware. SSDs and lots of RAM + are key to speeding up the builds.Signature · 6 lines
2.1.0 _______________________________________________ buildroot mailing list buildroot at busybox.net http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'