summaryrefslogtreecommitdiff
path: root/distribution/yocto-basic/yocto-adt.tex
blob: 62586536e3edaf373de778db4e5bc829a4b0e3b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
\subsection{ADT}

\begin{frame}
\frametitle{Yocto ADT (Application Development Kit)}
Core Components
\vspace{2em}
\begin{itemize}
\item system root
\item QEMU emulator
\item cross development toolchain
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{Yocto ADT}
Eclipse Plugin
\vspace{2em}
\begin{itemize}
\item roundtrip application development
\item toolchain/system root integration
\item emulated and hardware targets
\item application templates
\item on-target debugging
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{Yocto ADT}
Profiling Tools
\vspace{2em}
\begin{itemize}
\item LatencyTOP
\item PowerTOP
\item OProfile
\item Perf
\item SystemTap
\item Lttng-ust
\end{itemize}
\end{frame}

\begin{frame}[fragile]
\frametitle{Build an External Usable Toolchain}
\begin{verbatim}
bitbake meta-toolchain
\end{verbatim}
or to include headers and static version of all used libraries
\begin{verbatim}
bitbake -c populate_sdk core-image-minimal
\end{verbatim}
To install the toolchain:
\begin{verbatim}
% ./tmp/deploy/sdk/poky-glibc-x86\_64-meta-toolchain-i586-toolchain-2.0.sh
Enter target directory for SDK (default: /opt/poky/2.0): /home/devel/sdk
\end{verbatim}
to use the toolchain:
\begin{verbatim}
source /home/devel/sdk/environment-setup-i586-poky-linux
\end{verbatim}
\end{frame}

\begin{frame}[fragile]
\frametitle{Build an Internal Usable Toolchain}
\begin{verbatim}
bitbake meta-ide-support
\end{verbatim}
\vspace{2em}
\end{frame}

\begin{frame}[fragile]
\frametitle{Export an NFS Root Filesystem}
\begin{verbatim}
runqemu-extract-sdk \
    tmp/deploy/images/qemux86/core-image-minimal-qemux86.tar.bz2 \
    ~/sdk/core-image-minimal
\end{verbatim}
\end{frame}

%\begin{frame}[fragile]
%\frametitle{build ADT installer script}
%\begin{verbatim}
%poky/build % bitbake adt-installer
%poky/build % cp tmp/deploy/sdk/adt_installer.tar.bz2 ~/
%poky/build % cd
%% cp tmp/deploy/sdk/adt_installer.tar.bz2 ~/
%% tar xjf adt_installer.tar.bz2
%% cd adt-installer
%\end{verbatim}
%\end{frame}
%
%\begin{frame}
%\frametitle{configure ADT installer}
%general configuration
%\begin{description}
%\item[YOCTOADT\_REPO] http repo with rootfs images and ipkg packages.
%       Needs to match the layout from 'http://adtrepo.yoctoproject.org'
%\item[YOCTOADT\_TARGETS] machine target architectures to setup cross SDKs
%\item[YOCTOADT\_QEMU] install qemu? \[Y/N\]
%\item[YOCTOADT\_NFS\_UTIL] needed for eclipse \[Y/N\]
%\end{description}
%\end{frame}
%
%\begin{frame}
%\frametitle{configure ADT installer \#2}
%configuration for each supported BSP
%\begin{description}
%\item[YOCTOADT\_TARGET\_MACHINE\_<arch>] qemu that should be used, e.g. qemux86
%\item[YOCTOADT\_ROOTFS\_<arch>] rfs images that should be used, e.g. sato-sdk
%\item[YOCTOADT\_TARGET\_SYSROOT\_<arch>] needs to match above variable
%\item[YOCTOADT\_TARGET\_SYSROOT\_LOC\_<arch>] path where the sysroot will be
%       stored
%\end{description}
%\end{frame}
%
%\begin{frame}[fragile]
%\frametitle{run ADT installer}
%\begin{verbatim}
%adt-installer % ./adt_installer
%Please enter the install location (default: /opt/poky/2.0): <return>
%...
%[ADT_INST] Please enter your selections here:
%S<return>
%...
%\end{verbatim}
%to use the ADT, the environment needs to be sourced:
%\begin{verbatim}
%% .  /opt/poky/2.0/environment-setup-i586-poky-linux
%\end{verbatim}
%\end{frame}

%\begin{frame}[fragile]
%\frametitle{ADT \& Eclipse}
%install and start eclipse:
%\begin{verbatim}
%% wget http://ftp.fau.de/eclipse/technology/epp/downloads/release/kepler/R/eclipse-cpp-kepler-R-linux-gtk.tar.gz
%% tar xzf eclipse-*.tar.gz
%% ./eclipse/eclipse
%\end{verbatim}
%add the yocto update-site (Help, Install New Software, Add\dots)
%\begin{verbatim}
%http://downloads.yoctoproject.org/releases/eclipse-plugin/1.9/kepler/
%\end{verbatim}
%select and install all components, by clicking
%
%'Next, Next, Accept Licenses, Finish, Accept installing from insecure source,
%and accept to restart eclipse'
%goto 'Help, Install New Software, Add\dots' again and
%select 'Kepler' as update site and select 'Linux Tools' and
%'Mobile and Device Development'; select 'Next' until you can
%'Finish' and quit eclipse
%\end{frame}

%\begin{frame}
%\frametitle{configure Eclipse}
%\begin{itemize}
%\item select 'Window, Preferences, Yocto Project ADT'
%\item select 'Standalone pre-built toolchain'
%\item set Toolchain Root Location '/home/devel/sdk'
%\item set Sysroot Location '/home/devel/sdk/core-image-minimal'
%\item use 'native' as 'Target Options'
%\item 'Apply' the Settings and close the dialog with 'OK'
%\end{itemize}
%\end{frame}

%\begin{frame}
%\frametitle{Hello World example}
%\begin{itemize}
%\item select 'File, New, Project\dots'
%\item select 'C/C++, C Project'
%\item select 'Yocto Project ADT Autotools Project, Hello World ANSI C Project'
%\item enter a 'Project name' and select 'Next'
%\item enter 'Basic settings' and select 'Finish'
%\item if opened, close the 'Welcome' window
%\item right click on the root project folder and select 'Reconfigure Project'
%\item right click on the root project folder and select 'Build Project'
%\end{itemize}
%\end{frame}

%\begin{frame}
%\frametitle{remote execution and debugging}
%\begin{itemize}
%\item switch to 'Remote System Explorer' perspective
%\item create a new 'TCF' connection
%\item switch to 'C/C++' perspective and select 'Run / Debug Configurations'
%\item select the preconfigured 'C/C++ Application' and select the correct
%        'Connection'
%\item set 'Remote Absolute File Path' to sth. like '/usr/bin/<yourapp>'
%\item select 'Apply', 'Debug' - Next time you can use this preconfigured debug
%        configuration
%\end{itemize}
%\end{frame}