[FE training-materials-updates] slides/autotools-usage: checkpoint progress
Boris Brezillon
boris.brezillon at free-electrons.com
Fri May 22 17:13:36 CEST 2015
Repository : git://git.free-electrons.com/training-materials.git
On branch : mtd-rework-WIP
Link : http://git.free-electrons.com/training-materials/commit/?id=4f2494b375ee92ffc319a27255fe3ea1d732a32c
>---------------------------------------------------------------
commit 4f2494b375ee92ffc319a27255fe3ea1d732a32c
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date: Wed May 20 13:13:06 2015 +0200
slides/autotools-usage: checkpoint progress
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
>---------------------------------------------------------------
4f2494b375ee92ffc319a27255fe3ea1d732a32c
slides/autotools-usage/autotools-usage.tex | 267 +++++++++++-
.../what-configure-does.dia} | 461 ++++++++++-----------
2 files changed, 481 insertions(+), 247 deletions(-)
diff --git a/slides/autotools-usage/autotools-usage.tex b/slides/autotools-usage/autotools-usage.tex
index 06192f8..234c992 100644
--- a/slides/autotools-usage/autotools-usage.tex
+++ b/slides/autotools-usage/autotools-usage.tex
@@ -27,7 +27,7 @@
\item {\bf Configuration}\\
\code{./configure}\\
Will look at the available build environment, verify required
- dependencies, generate Makefiles.
+ dependencies, generate \code{Makefile}s and a \code{config.h}
\item {\bf Compilation}\\
\code{make}\\
Actually builds the software component, using the generated
@@ -40,7 +40,9 @@
\end{frame}
\begin{frame}{What is {\tt configure} doing?}
-
+ \begin{center}
+ \includegraphics[width=\textwidth]{slides/autotools-usage/what-configure-does.pdf}
+ \end{center}
\end{frame}
\begin{frame}{Standard Makefile targets}
@@ -61,42 +63,279 @@
\begin{frame}{Standard filesystem hierarchy}
\begin{itemize}
- \item {\bf prefix}, defaults to \code{/usr/local}
+ \item \code{prefix}, defaults to {\em /usr/local}
\begin{itemize}
- \item {\bf exec-prefix}, defaults to {\em prefix}
+ \item \code{exec-prefix}, defaults to \code{prefix}
\begin{itemize}
- \item {\bf bindir}, for programs, defaults to {\em exec-prefix/bin}
- \item {\bf libdir}, for libraries, defaults to {\em exec-prefix/lib}
+ \item \code{bindir}, for programs, defaults to \code{exec-prefix/}{\em bin}
+ \item \code{libdir}, for libraries, defaults to \code{exec-prefix/}{\em lib}
\end{itemize}
\end{itemize}
- \item {\bf includedir}, for headers, defaults to {\em prefix/include}
- \item {\bf datarootdir}, defaults to {\em prefix/share}
+ \item \code{includedir}, for headers, defaults to \code{prefix/}{\em include}
+ \item \code{datarootdir}, defaults to \code{prefix/}{\em share}
+ \begin{itemize}
+ \item \code{datadir}, defaults to \code{datarootdir}
+ \item \code{mandir}, for man pages, defaults to \code{datarootdir/}{\em man}
+ \item \code{infodir}, for info documents, defaults to \code{datarootdir/}{\em info}
+ \end{itemize}
+ \item \code{sysconfdir}, for configuration files, defaults to
+ \code{prefix/}{\em etc}
+ \item \code{--<option>} available for each of them
\begin{itemize}
- \item {\bf datadir}, defaults to {\em datarootdir}
- \item {\bf mandir}, for man pages, defaults to {\em datarootdir/man}
- \item {\bf infodir}, for info documents, defaults to {\em datarootdir/info}
+ \item E.g: \code{./configure --prefix=~/sys/}
\end{itemize}
- \item \code{./configure --prefix=~/sys/}
\end{itemize}
\end{frame}
\begin{frame}{Standard configuration variables}
+ \begin{itemize}
+ \item \code{CC}, C compiler command
+ \item \code{CFLAGS}, C compiler flags
+ \item \code{CXX}, C++ compiler command
+ \item \code{CXXFLAGS}, C++ compiler flags
+ \item \code{LDFLAGS}, linker flags
+ \item \code{CPPFLAGS}, C/C++ preprocessor flags
+ \item and many more, see \code{./configure --help}
+ \item E.g: \code{./configure CC=arm-linux-gcc}
+ \end{itemize}
+\end{frame}
+\begin{frame}{System types: build, host, target}
+ \begin{itemize}
+ \item {\em autotools} identify three {\bf system types}:
+ \begin{itemize}
+ \item {\bf build}, which is the system where the build takes place
+ \item {\bf host}, which is the system where the execution of the
+ compiled code will take place
+ \item {\bf target}, which is the system for which the program will
+ generate code. This is only used for compilers, assemblers,
+ linkers, etc.
+ \end{itemize}
+ \item Corresponding \code{--build}, \code{--host} and
+ \code{--target} {\em configure} options.
+ \begin{itemize}
+ \item They are all automatically {\em guessed} to the current
+ machine by default
+ \item \code{--build}, generally does not need to be changed
+ \item \code{--host}, must be overriden to do cross-compilation
+ \item \code{--target}, needs to be overriden if needed (to
+ generate a cross-compiler, for example)
+ \end{itemize}
+ \item Arguments to these options are {\em configuration names}, also
+ called {\em system tuples}
+ \end{itemize}
\end{frame}
-\begin{frame}{Out of tree build}
+\begin{frame}{System type: {\em configuration names}}
+ \begin{itemize}
+ \item A string identifying a combination of architecture, operating
+ system, ABI and C library
+ \item General format: \code{<arch>-<vendor>-<kernel>-<operating_system>}
+ \begin{itemize}
+ \item \code{<arch>} is the type of processor, i.e \code{arm},
+ \code{i686}, etc.
+ \item \code{<vendor>} is a free form string, which can be omitted
+ \item \code{<kernel>} is always \code{linux} when working with
+ Linux systems, or \code{none} for bare metal systems
+ \item \code{<operating_system>} generally identifies the C library
+ and ABI, i.e \code{gnu}, \code{gnueabi}, \code{eabi},
+ \code{gnueabihf}, \code{uclibcgnueabihf}
+ \end{itemize}
+ \item Also often used as the {\em prefix} for cross-compilation
+ tools.
+ \item Examples
+ \begin{itemize}
+ \item \code{x86_64-amd-linux-gnu}
+ \item \code{powerpc-mentor-linux-gnu}
+ \item \code{armeb-linux-gnueabihf}
+ \item \code{i486-linux-musl}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]{System type: native compilation example}
+
+\begin{block}{}
+{\small
+\begin{verbatim}
+$ ./configure
+[...]
+checking build system type... x86_64-unknown-linux-gnu
+checking host system type... x86_64-unknown-linux-gnu
+checking for gcc... gcc
+[...]
+checking how to run the C preprocessor... gcc -E
+[...]
+\end{verbatim}}
+\end{block}
\end{frame}
\begin{frame}{Cross-compilation}
+ \begin{itemize}
+ \item By default, {\em autotools} will guess the {\bf host} machine
+ as being the current machine
+ \item To cross-compile, it must be overriden by passing the
+ \code{--host} option with the appropriate {\em configuration name}
+ \item By default, {\em autotools} will try to use the
+ cross-compilation tools that use the {\em configuration name} as
+ their prefix.
+ \item If not, the variables \code{CC}, \code{CXX}, \code{LD},
+ \code{AR}, etc. can be used to point to the cross-compilation
+ tools.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]{System type: cross compilation example}
+
+\begin{block}{}
+{\scriptsize
+\begin{verbatim}
+$ which arm-linux-gnueabihf-gcc
+/usr/bin/arm-linux-gnueabihf-gcc
+$ ./configure --host=arm-linux-gnueabihf
+[...]
+checking build system type... x86_64-unknown-linux-gnu
+checking host system type... arm-unknown-linux-gnueabihf
+checking for arm-linux-gnueabihf-gcc... arm-linux-gnueabihf-gcc
+[...]
+checking how to run the C preprocessor... arm-linux-gnueabihf-gcc -E
+[...]
+\end{verbatim}}
+\end{block}
\end{frame}
-\begin{frame}{Diverted installation with DESTDIR}
+\begin{frame}{Out of tree build}
+ \begin{itemize}
+ \item {\em autotools} support out of tree compilation by default
+ \item Consists in doing the build in a directory separate from the
+ source directory
+ \item Allows to:
+ \begin{itemize}
+ \item Build different configurations without having to rebuild
+ from scratch each time.
+ \item Do not clutter the source directory with build related files
+ \end{itemize}
+ \item To use out of tree compilation, simply run the configure
+ script from another empty directory
+ \begin{itemize}
+ \item This directory will become the build directory
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]{Out of tree build: example}
+
+ \begin{block}{}
+{\scriptsize
+\begin{verbatim}
+strace-4.9 $ ls
+configure configure.ac Makefile.am system.c NEWS
+AUTHORS COPYING file.c ioprio.c config.h
+strace-4.9 $ mkdir ../strace-build-x86 ../strace-build-arm
+strace-4.9 $ cd ../strace-build-x86
+strace-build-x86 $ ../strace-4.9/configure
+[...]
+strace-build-x86 $ make
+[...]
+strace-build-x86 $ cd ../strace-build-arm
+strace-build-arm $ ../strace-4.9/configure --host=arm-linux-gnueabihf
+[...]
+strace-build-arm $ make
+[...]
+\end{verbatim}}
+\end{block}
+
+\end{frame}
+
+\begin{frame}[fragile]{Diverted installation with DESTDIR}
+
+ \begin{itemize}
+
+ \item By default, \code{make install} installs to the directories
+ given in \code{--prefix} and related options.
+
+ \item In some situations, it is useful to {\em divert} the
+ installation to another directory
+ \begin{itemize}
+ \item Cross-compilation, where the build machine is not the
+ machine where applications will be executed.
+ \item Packaging, where the installation needs to be done in a
+ temporary directory.
+ \end{itemize}
+
+ \item Achieved using the \code{DESTDIR} variable.
+ \end{itemize}
+
+ \begin{block}{}
+{\tiny
+\begin{verbatim}
+strace-4.9 $ make DESTDIR=/tmp/test install
+[...]
+strace-4.9 $ find /tmp/test/ -type f
+/tmp/test/usr/local/share/man/man1/strace.1
+/tmp/test/usr/local/bin/strace-log-merge
+/tmp/test/usr/local/bin/strace-graph
+/tmp/test/usr/local/bin/strace
+\end{verbatim}}
+\end{block}
\end{frame}
\begin{frame}{Analyzing issues}
+ \begin{itemize}
+ \item \code{autoconf} keeps a log of all the tests it runs in a file
+ called \code{config.log}
+ \item Very useful for analysis of \code{autoconf} issues
+ \item It contains several sections: {\em Platform}, {\em Core
+ tests}, {\em Running config.status}, {\em Cache variables}, {\em
+ Output variables}, {\em confdefs.h}
+ \item The end of the {\em Core tests} section is usually the most
+ interesting part
+ \begin{itemize}
+ \item This is where you would get more details about the reason of
+ the {\em configure} script failure
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]{{\tt config.log} example}
+
+\begin{block}{}
+{\tiny
+\begin{verbatim}
+$ ./configure ...
+[...]
+checking for TIFFFlushData in -ltiff34... no
+configure: WARNING: *** TIFF loader will not be built (TIFF library not found) ***
+configure: error:
+*** Checks for TIFF loader failed. You can build without it by passing
+*** --without-libtiff to configure but some programs using GTK+ may
+*** not work properly
+
+$ cat config.log
+[...]
+configure:18177: .../usr/bin/x86_64-linux-gcc -std=gnu99 -o conftest -D_LARGEFILE_SOURCE
+ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -Wall -D_LARGEFILE_SOURCE
+ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DG_DISABLE_SINGLE_INCLUDES -static
+ conftest.c -ltiff34 -ljpeg -lz -lm >&5
+.../host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-uclibc/4.8.4/../../../../
+ x86_64-buildroot-linux-uclibc/bin/ld: cannot find -ltiff34
+.../host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-uclibc/4.8.4/../../../../
+ x86_64-buildroot-linux-uclibc/bin/ld: cannot find -ljpeg
+collect2: error: ld returned 1 exit status
+configure:18177: $? = 1
+configure: failed program was:
+[...]
+configure:18186: result: no
+configure:18199: WARNING: *** TIFF loader will not be built (TIFF library not found) ***
+configure:18210: error:
+*** Checks for TIFF loader failed. You can build without it by passing
+*** --without-libtiff to configure but some programs using GTK+ may
+*** not work properly
+\end{verbatim}}
+\end{block}
\end{frame}
diff --git a/slides/sysdev-application-development/gdb-vs-gdbserver-architecture.dia b/slides/autotools-usage/what-configure-does.dia
similarity index 72%
copy from slides/sysdev-application-development/gdb-vs-gdbserver-architecture.dia
copy to slides/autotools-usage/what-configure-does.dia
index ec3863e..0a94056 100644
--- a/slides/sysdev-application-development/gdb-vs-gdbserver-architecture.dia
+++ b/slides/autotools-usage/what-configure-does.dia
@@ -63,117 +63,114 @@
</dia:attribute>
</dia:diagramdata>
<dia:layer name="Arrière-plan" visible="true" active="true">
- <dia:object type="Standard - Box" version="0" id="O0">
+ <dia:object type="Standard - Line" version="0" id="O0">
<dia:attribute name="obj_pos">
- <dia:point val="10,5"/>
+ <dia:point val="24.5,11"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="9.95,4.95;24.05,23.05"/>
+ <dia:rectangle val="24.1382,10.95;24.8618,20.1118"/>
</dia:attribute>
- <dia:attribute name="elem_corner">
- <dia:point val="10,5"/>
- </dia:attribute>
- <dia:attribute name="elem_width">
- <dia:real val="14"/>
- </dia:attribute>
- <dia:attribute name="elem_height">
- <dia:real val="18"/>
+ <dia:attribute name="conn_endpoints">
+ <dia:point val="24.5,11"/>
+ <dia:point val="24.5,20"/>
</dia:attribute>
- <dia:attribute name="border_width">
- <dia:real val="0.10000000149011612"/>
+ <dia:attribute name="numcp">
+ <dia:int val="1"/>
</dia:attribute>
- <dia:attribute name="border_color">
- <dia:color val="#6a8954"/>
+ <dia:attribute name="end_arrow">
+ <dia:enum val="22"/>
</dia:attribute>
- <dia:attribute name="inner_color">
- <dia:color val="#c5e387"/>
+ <dia:attribute name="end_arrow_length">
+ <dia:real val="0.5"/>
</dia:attribute>
- <dia:attribute name="show_background">
- <dia:boolean val="true"/>
+ <dia:attribute name="end_arrow_width">
+ <dia:real val="0.5"/>
</dia:attribute>
+ <dia:connections>
+ <dia:connection handle="0" to="O3" connection="6"/>
+ <dia:connection handle="1" to="O11" connection="1"/>
+ </dia:connections>
</dia:object>
- <dia:object type="Standard - Box" version="0" id="O1">
+ <dia:object type="Standard - Line" version="0" id="O1">
<dia:attribute name="obj_pos">
- <dia:point val="36,5"/>
+ <dia:point val="37.5,11.0496"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="35.95,4.95;50.05,23.05"/>
+ <dia:rectangle val="37.1382,10.9996;37.8618,20.1118"/>
</dia:attribute>
- <dia:attribute name="elem_corner">
- <dia:point val="36,5"/>
- </dia:attribute>
- <dia:attribute name="elem_width">
- <dia:real val="14"/>
- </dia:attribute>
- <dia:attribute name="elem_height">
- <dia:real val="18"/>
+ <dia:attribute name="conn_endpoints">
+ <dia:point val="37.5,11.0496"/>
+ <dia:point val="37.5,20"/>
</dia:attribute>
- <dia:attribute name="border_width">
- <dia:real val="0.10000000149011612"/>
+ <dia:attribute name="numcp">
+ <dia:int val="1"/>
</dia:attribute>
- <dia:attribute name="border_color">
- <dia:color val="#5cacff"/>
+ <dia:attribute name="end_arrow">
+ <dia:enum val="22"/>
</dia:attribute>
- <dia:attribute name="inner_color">
- <dia:color val="#d8e5e5"/>
+ <dia:attribute name="end_arrow_length">
+ <dia:real val="0.5"/>
</dia:attribute>
- <dia:attribute name="show_background">
- <dia:boolean val="true"/>
+ <dia:attribute name="end_arrow_width">
+ <dia:real val="0.5"/>
</dia:attribute>
+ <dia:connections>
+ <dia:connection handle="0" to="O4" connection="8"/>
+ <dia:connection handle="1" to="O12" connection="1"/>
+ </dia:connections>
</dia:object>
- <dia:object type="Standard - Box" version="0" id="O2">
+ <dia:object type="Standard - Line" version="0" id="O2">
<dia:attribute name="obj_pos">
- <dia:point val="12,8"/>
+ <dia:point val="50.5,11"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="11.95,7.95;22.05,11.05"/>
- </dia:attribute>
- <dia:attribute name="elem_corner">
- <dia:point val="12,8"/>
+ <dia:rectangle val="50.1382,10.95;50.8618,20.1118"/>
</dia:attribute>
- <dia:attribute name="elem_width">
- <dia:real val="10"/>
- </dia:attribute>
- <dia:attribute name="elem_height">
- <dia:real val="3"/>
+ <dia:attribute name="conn_endpoints">
+ <dia:point val="50.5,11"/>
+ <dia:point val="50.5,20"/>
</dia:attribute>
- <dia:attribute name="border_width">
- <dia:real val="0.10000000149011612"/>
+ <dia:attribute name="numcp">
+ <dia:int val="1"/>
</dia:attribute>
- <dia:attribute name="border_color">
- <dia:color val="#868686"/>
+ <dia:attribute name="end_arrow">
+ <dia:enum val="22"/>
</dia:attribute>
- <dia:attribute name="inner_color">
- <dia:color val="#e5e5e5"/>
+ <dia:attribute name="end_arrow_length">
+ <dia:real val="0.5"/>
</dia:attribute>
- <dia:attribute name="show_background">
- <dia:boolean val="true"/>
+ <dia:attribute name="end_arrow_width">
+ <dia:real val="0.5"/>
</dia:attribute>
+ <dia:connections>
+ <dia:connection handle="0" to="O5" connection="6"/>
+ <dia:connection handle="1" to="O13" connection="1"/>
+ </dia:connections>
</dia:object>
<dia:object type="Standard - Box" version="0" id="O3">
<dia:attribute name="obj_pos">
- <dia:point val="12,13"/>
+ <dia:point val="20,8"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="11.95,12.95;22.05,21.05"/>
+ <dia:rectangle val="19.95,7.95;29.05,11.05"/>
</dia:attribute>
<dia:attribute name="elem_corner">
- <dia:point val="12,13"/>
+ <dia:point val="20,8"/>
</dia:attribute>
<dia:attribute name="elem_width">
- <dia:real val="10"/>
+ <dia:real val="9"/>
</dia:attribute>
<dia:attribute name="elem_height">
- <dia:real val="8"/>
+ <dia:real val="3"/>
</dia:attribute>
<dia:attribute name="border_width">
<dia:real val="0.10000000149011612"/>
</dia:attribute>
<dia:attribute name="border_color">
- <dia:color val="#868686"/>
+ <dia:color val="#5cacff"/>
</dia:attribute>
<dia:attribute name="inner_color">
- <dia:color val="#e5e5e5"/>
+ <dia:color val="#add8e6"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="true"/>
@@ -181,16 +178,16 @@
</dia:object>
<dia:object type="Standard - Box" version="0" id="O4">
<dia:attribute name="obj_pos">
- <dia:point val="38,8"/>
+ <dia:point val="33,8"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="37.95,7.95;48.05,11.05"/>
+ <dia:rectangle val="32.95,7.95;42.05,11.05"/>
</dia:attribute>
<dia:attribute name="elem_corner">
- <dia:point val="38,8"/>
+ <dia:point val="33,8"/>
</dia:attribute>
<dia:attribute name="elem_width">
- <dia:real val="10"/>
+ <dia:real val="9"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="3"/>
@@ -199,10 +196,10 @@
<dia:real val="0.10000000149011612"/>
</dia:attribute>
<dia:attribute name="border_color">
- <dia:color val="#868686"/>
+ <dia:color val="#5cacff"/>
</dia:attribute>
<dia:attribute name="inner_color">
- <dia:color val="#e5e5e5"/>
+ <dia:color val="#add8e6"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="true"/>
@@ -210,28 +207,28 @@
</dia:object>
<dia:object type="Standard - Box" version="0" id="O5">
<dia:attribute name="obj_pos">
- <dia:point val="38,13"/>
+ <dia:point val="46,8"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="37.95,12.95;48.05,21.05"/>
+ <dia:rectangle val="45.95,7.95;55.05,11.05"/>
</dia:attribute>
<dia:attribute name="elem_corner">
- <dia:point val="38,13"/>
+ <dia:point val="46,8"/>
</dia:attribute>
<dia:attribute name="elem_width">
- <dia:real val="10"/>
+ <dia:real val="9"/>
</dia:attribute>
<dia:attribute name="elem_height">
- <dia:real val="8"/>
+ <dia:real val="3"/>
</dia:attribute>
<dia:attribute name="border_width">
<dia:real val="0.10000000149011612"/>
</dia:attribute>
<dia:attribute name="border_color">
- <dia:color val="#868686"/>
+ <dia:color val="#5cacff"/>
</dia:attribute>
<dia:attribute name="inner_color">
- <dia:color val="#e5e5e5"/>
+ <dia:color val="#add8e6"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="true"/>
@@ -239,24 +236,24 @@
</dia:object>
<dia:object type="Standard - Text" version="1" id="O6">
<dia:attribute name="obj_pos">
- <dia:point val="17,9.5"/>
+ <dia:point val="24.5,9.5"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="12.835,8.92375;21.165,10.0762"/>
+ <dia:rectangle val="21.695,9.00625;27.305,9.99375"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#ARCH-linux-gdb#</dia:string>
+ <dia:string>#Makefile.in#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="monospace" style="0" name="Courier"/>
</dia:attribute>
<dia:attribute name="height">
- <dia:real val="1.2347221747040749"/>
+ <dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="17,9.84125"/>
+ <dia:point val="24.5,9.79375"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
@@ -270,29 +267,29 @@
<dia:enum val="2"/>
</dia:attribute>
<dia:connections>
- <dia:connection handle="0" to="O2" connection="8"/>
+ <dia:connection handle="0" to="O3" connection="8"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O7">
<dia:attribute name="obj_pos">
- <dia:point val="43,9.5"/>
+ <dia:point val="37.5,9.5"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="40.3225,8.92375;45.6775,10.0762"/>
+ <dia:rectangle val="33.675,9.00625;41.325,9.99375"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#gdbserver#</dia:string>
+ <dia:string>#src/Makefile.in#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="monospace" style="0" name="Courier"/>
</dia:attribute>
<dia:attribute name="height">
- <dia:real val="1.2347221747040749"/>
+ <dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="43,9.84125"/>
+ <dia:point val="37.5,9.79375"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
@@ -311,27 +308,24 @@
</dia:object>
<dia:object type="Standard - Text" version="1" id="O8">
<dia:attribute name="obj_pos">
- <dia:point val="17,17"/>
+ <dia:point val="50.5,9.5"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="12.22,14.7792;21.78,19.2208"/>
+ <dia:rectangle val="47.695,9.00625;53.305,9.99375"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#Binaries and libraries
-with debugging
-symbols not
-stripped#</dia:string>
+ <dia:string>#config.h.in#</dia:string>
</dia:attribute>
<dia:attribute name="font">
- <dia:font family="sans" style="0" name="Helvetica"/>
+ <dia:font family="monospace" style="0" name="Courier"/>
</dia:attribute>
<dia:attribute name="height">
- <dia:real val="1.1288888454437256"/>
+ <dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="17,15.6192"/>
+ <dia:point val="50.5,9.79375"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
@@ -345,32 +339,58 @@ stripped#</dia:string>
<dia:enum val="2"/>
</dia:attribute>
<dia:connections>
- <dia:connection handle="0" to="O3" connection="8"/>
+ <dia:connection handle="0" to="O5" connection="8"/>
</dia:connections>
</dia:object>
- <dia:object type="Standard - Text" version="1" id="O9">
+ <dia:object type="Standard - Box" version="0" id="O9">
<dia:attribute name="obj_pos">
- <dia:point val="43,17"/>
+ <dia:point val="20,14"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="38.4537,14.7792;47.5463,19.2208"/>
+ <dia:rectangle val="19.95,13.95;55.05,17.05"/>
+ </dia:attribute>
+ <dia:attribute name="elem_corner">
+ <dia:point val="20,14"/>
+ </dia:attribute>
+ <dia:attribute name="elem_width">
+ <dia:real val="35"/>
+ </dia:attribute>
+ <dia:attribute name="elem_height">
+ <dia:real val="3"/>
+ </dia:attribute>
+ <dia:attribute name="border_width">
+ <dia:real val="0.10000000149011612"/>
+ </dia:attribute>
+ <dia:attribute name="border_color">
+ <dia:color val="#d9cb2f"/>
+ </dia:attribute>
+ <dia:attribute name="inner_color">
+ <dia:color val="#fff8a8"/>
+ </dia:attribute>
+ <dia:attribute name="show_background">
+ <dia:boolean val="true"/>
+ </dia:attribute>
+ </dia:object>
+ <dia:object type="Standard - Text" version="1" id="O10">
+ <dia:attribute name="obj_pos">
+ <dia:point val="37.5,15.5"/>
+ </dia:attribute>
+ <dia:attribute name="obj_bb">
+ <dia:rectangle val="34.695,15.0062;40.305,15.9938"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#Running program
-with binaries and
-libraries that can be
-stripped#</dia:string>
+ <dia:string>#./configure#</dia:string>
</dia:attribute>
<dia:attribute name="font">
- <dia:font family="sans" style="0" name="Helvetica"/>
+ <dia:font family="monospace" style="0" name="Courier"/>
</dia:attribute>
<dia:attribute name="height">
- <dia:real val="1.1288888454437256"/>
+ <dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="43,15.6192"/>
+ <dia:point val="37.5,15.7937"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
@@ -384,70 +404,116 @@ stripped#</dia:string>
<dia:enum val="2"/>
</dia:attribute>
<dia:connections>
- <dia:connection handle="0" to="O5" connection="8"/>
+ <dia:connection handle="0" to="O9" connection="8"/>
</dia:connections>
</dia:object>
- <dia:object type="Standard - Line" version="0" id="O10">
+ <dia:object type="Standard - Box" version="0" id="O11">
<dia:attribute name="obj_pos">
- <dia:point val="22,9.5"/>
+ <dia:point val="20,20"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="21.85,8.91459;38.1025,10.0854"/>
+ <dia:rectangle val="19.95,19.95;29.05,23.05"/>
</dia:attribute>
- <dia:attribute name="conn_endpoints">
- <dia:point val="22,9.5"/>
- <dia:point val="37.9525,9.5"/>
+ <dia:attribute name="elem_corner">
+ <dia:point val="20,20"/>
</dia:attribute>
- <dia:attribute name="numcp">
- <dia:int val="1"/>
+ <dia:attribute name="elem_width">
+ <dia:real val="9"/>
</dia:attribute>
- <dia:attribute name="line_width">
- <dia:real val="0.30000001192092896"/>
+ <dia:attribute name="elem_height">
+ <dia:real val="3"/>
</dia:attribute>
- <dia:attribute name="start_arrow">
- <dia:enum val="22"/>
+ <dia:attribute name="border_width">
+ <dia:real val="0.10000000149011612"/>
</dia:attribute>
- <dia:attribute name="start_arrow_length">
- <dia:real val="0.5"/>
+ <dia:attribute name="border_color">
+ <dia:color val="#6a8954"/>
</dia:attribute>
- <dia:attribute name="start_arrow_width">
- <dia:real val="0.5"/>
+ <dia:attribute name="inner_color">
+ <dia:color val="#c5e387"/>
</dia:attribute>
- <dia:attribute name="end_arrow">
- <dia:enum val="22"/>
+ <dia:attribute name="show_background">
+ <dia:boolean val="true"/>
</dia:attribute>
- <dia:attribute name="end_arrow_length">
- <dia:real val="0.5"/>
+ </dia:object>
+ <dia:object type="Standard - Box" version="0" id="O12">
+ <dia:attribute name="obj_pos">
+ <dia:point val="33,20"/>
</dia:attribute>
- <dia:attribute name="end_arrow_width">
- <dia:real val="0.5"/>
+ <dia:attribute name="obj_bb">
+ <dia:rectangle val="32.95,19.95;42.05,23.05"/>
+ </dia:attribute>
+ <dia:attribute name="elem_corner">
+ <dia:point val="33,20"/>
+ </dia:attribute>
+ <dia:attribute name="elem_width">
+ <dia:real val="9"/>
+ </dia:attribute>
+ <dia:attribute name="elem_height">
+ <dia:real val="3"/>
+ </dia:attribute>
+ <dia:attribute name="border_width">
+ <dia:real val="0.10000000149011612"/>
+ </dia:attribute>
+ <dia:attribute name="border_color">
+ <dia:color val="#6a8954"/>
+ </dia:attribute>
+ <dia:attribute name="inner_color">
+ <dia:color val="#c5e387"/>
+ </dia:attribute>
+ <dia:attribute name="show_background">
+ <dia:boolean val="true"/>
+ </dia:attribute>
+ </dia:object>
+ <dia:object type="Standard - Box" version="0" id="O13">
+ <dia:attribute name="obj_pos">
+ <dia:point val="46,20"/>
+ </dia:attribute>
+ <dia:attribute name="obj_bb">
+ <dia:rectangle val="45.95,19.95;55.05,23.05"/>
+ </dia:attribute>
+ <dia:attribute name="elem_corner">
+ <dia:point val="46,20"/>
+ </dia:attribute>
+ <dia:attribute name="elem_width">
+ <dia:real val="9"/>
+ </dia:attribute>
+ <dia:attribute name="elem_height">
+ <dia:real val="3"/>
+ </dia:attribute>
+ <dia:attribute name="border_width">
+ <dia:real val="0.10000000149011612"/>
+ </dia:attribute>
+ <dia:attribute name="border_color">
+ <dia:color val="#6a8954"/>
+ </dia:attribute>
+ <dia:attribute name="inner_color">
+ <dia:color val="#c5e387"/>
+ </dia:attribute>
+ <dia:attribute name="show_background">
+ <dia:boolean val="true"/>
</dia:attribute>
- <dia:connections>
- <dia:connection handle="0" to="O2" connection="4"/>
- <dia:connection handle="1" to="O4" connection="8"/>
- </dia:connections>
</dia:object>
- <dia:object type="Standard - Text" version="1" id="O11">
+ <dia:object type="Standard - Text" version="1" id="O14">
<dia:attribute name="obj_pos">
- <dia:point val="30,7"/>
+ <dia:point val="24.5,21.5"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="26.2763,7;33.7238,9.04583"/>
+ <dia:rectangle val="22.46,21.0063;26.54,21.9938"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#Serial or Ethernet
-connection#</dia:string>
+ <dia:string>#Makefile#</dia:string>
</dia:attribute>
<dia:attribute name="font">
- <dia:font family="sans" style="0" name="Helvetica"/>
+ <dia:font family="monospace" style="0" name="Courier"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="30,7.7875"/>
+ <dia:point val="24.5,21.7938"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
@@ -458,103 +524,32 @@ connection#</dia:string>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
- <dia:enum val="0"/>
- </dia:attribute>
- </dia:object>
- <dia:object type="Standard - Line" version="0" id="O12">
- <dia:attribute name="obj_pos">
- <dia:point val="17,11"/>
- </dia:attribute>
- <dia:attribute name="obj_bb">
- <dia:rectangle val="16.6382,10.95;17.3618,13.05"/>
- </dia:attribute>
- <dia:attribute name="conn_endpoints">
- <dia:point val="17,11"/>
- <dia:point val="17,13"/>
- </dia:attribute>
- <dia:attribute name="numcp">
- <dia:int val="1"/>
- </dia:attribute>
- <dia:attribute name="start_arrow">
- <dia:enum val="22"/>
- </dia:attribute>
- <dia:attribute name="start_arrow_length">
- <dia:real val="0.5"/>
- </dia:attribute>
- <dia:attribute name="start_arrow_width">
- <dia:real val="0.5"/>
- </dia:attribute>
- <dia:attribute name="end_arrow">
- <dia:enum val="22"/>
- </dia:attribute>
- <dia:attribute name="end_arrow_length">
- <dia:real val="0.5"/>
- </dia:attribute>
- <dia:attribute name="end_arrow_width">
- <dia:real val="0.5"/>
- </dia:attribute>
- <dia:connections>
- <dia:connection handle="0" to="O2" connection="6"/>
- <dia:connection handle="1" to="O3" connection="1"/>
- </dia:connections>
- </dia:object>
- <dia:object type="Standard - Line" version="0" id="O13">
- <dia:attribute name="obj_pos">
- <dia:point val="43,11"/>
- </dia:attribute>
- <dia:attribute name="obj_bb">
- <dia:rectangle val="42.6382,10.95;43.3618,13.05"/>
- </dia:attribute>
- <dia:attribute name="conn_endpoints">
- <dia:point val="43,11"/>
- <dia:point val="43,13"/>
- </dia:attribute>
- <dia:attribute name="numcp">
- <dia:int val="1"/>
- </dia:attribute>
- <dia:attribute name="start_arrow">
- <dia:enum val="22"/>
- </dia:attribute>
- <dia:attribute name="start_arrow_length">
- <dia:real val="0.5"/>
- </dia:attribute>
- <dia:attribute name="start_arrow_width">
- <dia:real val="0.5"/>
- </dia:attribute>
- <dia:attribute name="end_arrow">
- <dia:enum val="22"/>
- </dia:attribute>
- <dia:attribute name="end_arrow_length">
- <dia:real val="0.5"/>
- </dia:attribute>
- <dia:attribute name="end_arrow_width">
- <dia:real val="0.5"/>
+ <dia:enum val="2"/>
</dia:attribute>
<dia:connections>
- <dia:connection handle="0" to="O4" connection="6"/>
- <dia:connection handle="1" to="O5" connection="1"/>
+ <dia:connection handle="0" to="O11" connection="8"/>
</dia:connections>
</dia:object>
- <dia:object type="Standard - Text" version="1" id="O14">
+ <dia:object type="Standard - Text" version="1" id="O15">
<dia:attribute name="obj_pos">
- <dia:point val="17,5"/>
+ <dia:point val="37.5,21.5"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="15.715,5;18.285,6.3175"/>
+ <dia:rectangle val="34.44,21.0063;40.56,21.9938"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#Host#</dia:string>
+ <dia:string>#src/Makefile#</dia:string>
</dia:attribute>
<dia:attribute name="font">
- <dia:font family="sans" style="0" name="Helvetica"/>
+ <dia:font family="monospace" style="0" name="Courier"/>
</dia:attribute>
<dia:attribute name="height">
- <dia:real val="1.411111056804657"/>
+ <dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="17,6.05"/>
+ <dia:point val="37.5,21.7938"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
@@ -565,32 +560,32 @@ connection#</dia:string>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
- <dia:enum val="0"/>
+ <dia:enum val="2"/>
</dia:attribute>
<dia:connections>
- <dia:connection handle="0" to="O0" connection="1"/>
+ <dia:connection handle="0" to="O12" connection="8"/>
</dia:connections>
</dia:object>
- <dia:object type="Standard - Text" version="1" id="O15">
+ <dia:object type="Standard - Text" version="1" id="O16">
<dia:attribute name="obj_pos">
- <dia:point val="43,5"/>
+ <dia:point val="50.5,21.5"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="41.2525,5;44.7475,6.3175"/>
+ <dia:rectangle val="48.46,21.0063;52.54,21.9938"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#Target#</dia:string>
+ <dia:string>#config.h#</dia:string>
</dia:attribute>
<dia:attribute name="font">
- <dia:font family="sans" style="0" name="Helvetica"/>
+ <dia:font family="monospace" style="0" name="Courier"/>
</dia:attribute>
<dia:attribute name="height">
- <dia:real val="1.411111056804657"/>
+ <dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="43,6.05"/>
+ <dia:point val="50.5,21.7938"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
@@ -601,10 +596,10 @@ connection#</dia:string>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
- <dia:enum val="0"/>
+ <dia:enum val="2"/>
</dia:attribute>
<dia:connections>
- <dia:connection handle="0" to="O1" connection="1"/>
+ <dia:connection handle="0" to="O13" connection="8"/>
</dia:connections>
</dia:object>
</dia:layer>
More information about the training-materials-updates
mailing list