[bootlin/training-materials updates] master: Mention the use of "ccache" for faster recompiling (4081a737)

Michael Opdenacker michael.opdenacker at bootlin.com
Tue Dec 8 09:47:35 CET 2020

Repository : https://github.com/bootlin/training-materials
On branch  : master
Link       : https://github.com/bootlin/training-materials/commit/4081a73730e90faf42d1fb736a1071c3f96a9997


commit 4081a73730e90faf42d1fb736a1071c3f96a9997
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date:   Tue Dec 8 09:47:35 2020 +0100

    Mention the use of "ccache" for faster recompiling
    Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>


 .../sysdev-kernel-building/sysdev-kernel-building.tex  | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/slides/sysdev-kernel-building/sysdev-kernel-building.tex b/slides/sysdev-kernel-building/sysdev-kernel-building.tex
index b61d7bc2..f10f64f2 100644
--- a/slides/sysdev-kernel-building/sysdev-kernel-building.tex
+++ b/slides/sysdev-kernel-building/sysdev-kernel-building.tex
@@ -389,21 +389,26 @@ tools (\code{gcc}, \code{as}, \code{ld}, \code{objcopy}, \code{strip}...).
   \frametitle{Kernel compilation}
+  \code{make}
-  \item \code{make}
-    \begin{itemize}
-    \item In the main kernel source directory!
+    \item Run it In the main kernel source directory!
     \item Remember to run multiple jobs in parallel
           if you have multiple CPU cores. Our advice:
           \code{ncpus * 2} or \code{ncpus + 2}, to fully load
           the CPU and I/Os at all times.\\
           Example: \code{make -j 8}
     \item No need to run as root!
+    \item To {\bf re}compile faster (7x according to some benchmarks),\\
+	  use the \code{ccache} compiler cache:\\
+          \code{export CROSS_COMPILE="ccache riscv64-linux-"}
-  \item Generates
-    \begin{itemize}
+  \frametitle{Kernel compilation results}
+  \begin{itemize}
     \item \code{vmlinux}, the raw uncompressed kernel image, in the
       ELF format, useful for debugging purposes, but cannot be booted
     \item \code{arch/<arch>/boot/*Image}, the final, usually
@@ -416,7 +421,6 @@ tools (\code{gcc}, \code{as}, \code{ld}, \code{objcopy}, \code{strip}...).
       files (on some architectures)
     \item All kernel modules, spread over the kernel source tree, as
       \code{.ko} ({\em Kernel Object}) files.
-    \end{itemize}

More information about the training-materials-updates mailing list