[FE training-materials-updates] Boot time slides: explicit details about mklibs

Michael Opdenacker michael.opdenacker at free-electrons.com
Tue Dec 24 06:05:11 CET 2013


Repository : git://git.free-electrons.com/training-materials.git

On branch  : master
Link       : http://git.free-electrons.com/training-materials/commit/?id=16a65cb4deaa10b27d6f771780ca9f25a7847b5c

>---------------------------------------------------------------

commit 16a65cb4deaa10b27d6f771780ca9f25a7847b5c
Author: Michael Opdenacker <michael.opdenacker at free-electrons.com>
Date:   Tue Dec 24 05:40:45 2013 +0100

    Boot time slides: explicit details about mklibs
    
    Signed-off-by: Michael Opdenacker <michael.opdenacker at free-electrons.com>


>---------------------------------------------------------------

16a65cb4deaa10b27d6f771780ca9f25a7847b5c
 .../boottime-init-scripts.tex                      |   19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/slides/boottime-init-scripts/boottime-init-scripts.tex b/slides/boottime-init-scripts/boottime-init-scripts.tex
index 94f42d2..1cf3927 100644
--- a/slides/boottime-init-scripts/boottime-init-scripts.tex
+++ b/slides/boottime-init-scripts/boottime-init-scripts.tex
@@ -151,7 +151,7 @@ See \url{http://elinux.org/Optimize_RC_Scripts}
 \end{frame}
 
 \begin{frame}
-\frametitle{Reduce size}
+\frametitle{Reduce size (1)}
 \begin{itemize}
 	\item Strip your executables and libraries, removing ELF sections
 		only needed for development and debugging. The \code{strip}
@@ -162,13 +162,24 @@ See \url{http://elinux.org/Optimize_RC_Scripts}
 		Goes beyond \code{strip} and can strip out a few more bits
 		that are not used by Linux to start an executable.
 		\code{BR2_STRIP_sstrip} in Buildroot.
+\end{itemize}
+\end{frame}
+
+\begin{frame}
+\frametitle{Reduce size (2)}
+\begin{itemize}
 	\item use \code{mklibs}, available at
 		\url{http://packages.debian.org/sid/mklibs}.
-		\code{mklibs} produces cut-down shared libraries that contain
+		\begin{itemize}
+		\item \code{mklibs} produces cut-down shared libraries that contain
 		only the routines required by a particular set of executables.
 		Really useful with big libraries like OpenGL and QT. It even
-		works without having the source code but be careful as
-		sometimes it can strip a bit too much (dlopened libraries).
+		works without having the source code.
+  		\item Available in Yocto, but not in Buildroot (at least
+                in 2013.11).
+                \item Limitation: \code{mklibs} could remove \code{dlopen}ed libraries
+                (loaded "manually" by applications) because it doesn't see them.
+		\end{itemize}
 \end{itemize}
 \end{frame}
 



More information about the training-materials-updates mailing list