diff options
Diffstat (limited to 'distribution/yocto-basic')
| -rw-r--r-- | distribution/yocto-basic/yocto-imgbuild2.tex | 341 |
1 files changed, 178 insertions, 163 deletions
diff --git a/distribution/yocto-basic/yocto-imgbuild2.tex b/distribution/yocto-basic/yocto-imgbuild2.tex index 6a97a3c..2590e07 100644 --- a/distribution/yocto-basic/yocto-imgbuild2.tex +++ b/distribution/yocto-basic/yocto-imgbuild2.tex @@ -1,102 +1,102 @@ \begin{frame}[fragile] -\frametitle{start the image} +\frametitle{Start the Image} \begin{verbatim} -% runqemu qemux86 core-image-minimal +$ runqemu qemux86 core-image-minimal \end{verbatim} \end{frame} -\begin{frame}[fragile] -\frametitle{inspect the build} -\begin{verbatim} -tmp/ -├── buildstats -├── cache -├── deploy -├── log -├── sstate-control -├── stamps -├── sysroots -├── work -└── work-shared -\end{verbatim} -\end{frame} +%\begin{frame}[fragile] +%\frametitle{Inspect the Build} +%\begin{verbatim} +%tmp/ +%├── buildstats +%├── cache +%├── deploy +%├── log +%├── sstate-control +%├── stamps +%├── sysroots +%├── work +%└── work-shared +%\end{verbatim} +%\end{frame} -\begin{frame}[fragile] -\frametitle{inspect the build} -\begin{verbatim} -tmp/buildstats/core-image-minimal-qemux86/201408271416/ -├── acl-2.2.52-r0 -├── acl-native-2.2.52-r0 -├── alsa-lib-native-1.0.27.2-r0 -├── attr-2.4.47-r0 -├── attr-native-2.4.47-r0 -├── autoconf-native-2.69-r11 -... -\end{verbatim} -\end{frame} +%\begin{frame}[fragile] +%\frametitle{Inspect the Build} +%\begin{verbatim} +%tmp/buildstats/core-image-minimal-qemux86/201408271416/ +%├── acl-2.2.52-r0 +%├── acl-native-2.2.52-r0 +%├── alsa-lib-native-1.0.27.2-r0 +%├── attr-2.4.47-r0 +%├── attr-native-2.4.47-r0 +%├── autoconf-native-2.69-r11 +%... +%\end{verbatim} +%\end{frame} -\begin{frame}[fragile] -\frametitle{inspect the build} -\begin{verbatim} -tmp/buildstats/core-image-minimal-qemux86/201408271416/acl-2.2.52-r0/ -├── do_compile -├── do_compile_ptest_base -├── do_configure -├── do_configure_ptest_base -├── do_fetch -├── do_install -├── do_install_ptest_base -├── do_package -├── do_packagedata -├── do_package_write_rpm -├── do_patch -├── do_populate_lic -├── do_populate_sysroot -└── do_unpack -\end{verbatim} -\end{frame} +%\begin{frame}[fragile] +%\frametitle{Inspect the Build} +%\begin{verbatim} +%tmp/buildstats/core-image-minimal-qemux86/201408271416/acl-2.2.52-r0/ +%├── do_compile +%├── do_compile_ptest_base +%├── do_configure +%├── do_configure_ptest_base +%├── do_fetch +%├── do_install +%├── do_install_ptest_base +%├── do_package +%├── do_packagedata +%├── do_package_write_rpm +%├── do_patch +%├── do_populate_lic +%├── do_populate_sysroot +%└── do_unpack +%\end{verbatim} +%\end{frame} -\begin{frame}[fragile] -\frametitle{inspect the build} -\begin{verbatim} -408271416/acl-2.2.52-r0/do_unpack -Event: TaskStarted -Started: 1409143746.65 -acl-2.2.52-r0: do_unpack: Elapsed time: 0.22 seconds -CPU usage: 7.1% -EndIOinProgress: 0 -EndReadsComp: 973062 -EndReadsMerged: 543875573 -EndSectRead: 36860156 -EndSectWrite: 1158945211 -EndTimeIO: 30104972 -EndTimeReads: 5545878 -EndTimeWrite: 1455538600 -... -StartWritesComp: 12202741 -Status: PASSED -Ended: 1409143746.87 -\end{verbatim} -\end{frame} +%\begin{frame}[fragile] +%\frametitle{Inspect the Build} +%\begin{verbatim} +%408271416/acl-2.2.52-r0/do_unpack +%Event: TaskStarted +%Started: 1409143746.65 +%acl-2.2.52-r0: do_unpack: Elapsed time: 0.22 seconds +%CPU usage: 7.1% +%EndIOinProgress: 0 +%EndReadsComp: 973062 +%EndReadsMerged: 543875573 +%EndSectRead: 36860156 +%EndSectWrite: 1158945211 +%EndTimeIO: 30104972 +%EndTimeReads: 5545878 +%EndTimeWrite: 1455538600 +%... +%StartWritesComp: 12202741 +%Status: PASSED +%Ended: 1409143746.87 +%\end{verbatim} +%\end{frame} -\begin{frame}[fragile] -\frametitle{inspect the build} -\begin{verbatim} -tmp/ -├── buildstats -├── cache -├── deploy -├── log -├── sstate-control -├── stamps -├── sysroots -├── work -└── work-shared -\end{verbatim} -\end{frame} +%\begin{frame}[fragile] +%\frametitle{Inspect the Build} +%\begin{verbatim} +%tmp/ +%├── buildstats +%├── cache +%├── deploy +%├── log +%├── sstate-control +%├── stamps +%├── sysroots +%├── work +%└── work-shared +%\end{verbatim} +%\end{frame} \begin{frame}[fragile] -\frametitle{inspect the build} +\frametitle{Inspect the Build} \begin{verbatim} tmp/deploy/ ├── images @@ -111,7 +111,7 @@ tmp/deploy/ \end{frame} \begin{frame}[fragile] -\frametitle{inspect the build} +\frametitle{Inspect the Build} \begin{verbatim} tmp/deploy/ ├── licenses @@ -128,7 +128,7 @@ tmp/deploy/ \end{frame} \begin{frame}[fragile] -\frametitle{inspect the build} +\frametitle{Inspect the Build} \begin{verbatim} tmp/deploy/ └── rpm @@ -145,110 +145,125 @@ tmp/deploy/ \end{verbatim} \end{frame} +%\begin{frame}[fragile] +%\frametitle{Inspect the Build} +%\begin{verbatim} +%├── % cat sstate-control/manifest-<pn>.<task> +%| /home/devel/poky/build/tmp/sysroots/x86_64-linux/usr/include/zconf.h +%| /home/devel/poky/build/tmp/sysroots/x86_64-linux/usr/include/zlib.h +%| /home/devel/poky/build/tmp/sysroots/x86_64-linux/usr/lib/libz.so.1 +%\end{verbatim} +%\begin{verbatim} +%├── sysroots # for the differnet architectures +%\end{verbatim} +%\begin{verbatim} +%├── work # work directories / where the sources are built +%| % ls tmp/work/qemux86-poky-linux/linux-yocto/3.14+gitAUTOINC+0942... +%| deploy-linux-yocto linux packages-split +%| deploy-rpms linux-qemux86-standard-build pkgdata +%| image linux-yocto.spec pseudo +%| license-destdir package sysroot-destdir +%| temp +%\end{verbatim} +%\end{frame} + +\subsection{Extra Tasks} + \begin{frame}[fragile] -\frametitle{inspect the build} +\frametitle{Execute a Specific Task} \begin{verbatim} -├── % cat sstate-control/manifest-<pn>.<task> -| /home/devel/poky/build/tmp/sysroots/x86_64-linux/usr/include/zconf.h -| /home/devel/poky/build/tmp/sysroots/x86_64-linux/usr/include/zlib.h -| /home/devel/poky/build/tmp/sysroots/x86_64-linux/usr/lib/libz.so.1 +bitbake -c <task> <recipe> \end{verbatim} +Use \begin{verbatim} -├── sysroots # for the differnet architectures -\end{verbatim} -\begin{verbatim} -├── work # work directories / where the sources are built -| % ls tmp/work/qemux86-poky-linux/linux-yocto/3.14+gitAUTOINC+0942... -| deploy-linux-yocto linux packages-split -| deploy-rpms linux-qemux86-standard-build pkgdata -| image linux-yocto.spec pseudo -| license-destdir package sysroot-destdir -| temp +bitbake -c listtasks <recipe> \end{verbatim} +to get a list of all available tasks. \end{frame} \begin{frame}[fragile] -\frametitle{execute a specific task} +\frametitle{Cleaning} +Remove the contents of the WORKDIR: \begin{verbatim} -bitbake <recipe> -c <task> +bitbake -c clean <recipe> \end{verbatim} -use +Remove all saved state information: \begin{verbatim} -bitbake <recipe> -c listtasks +bitbake -c cleansstate <recipe> \end{verbatim} -to get a list of all available tasks \end{frame} \begin{frame}[fragile] -\frametitle{build dependencies} +\frametitle{Build Dependencies} Save dependency tree information for the specified targets in the dot syntax. \begin{verbatim} -bitbake -g <target> +bitbake -g <recipe> \end{verbatim} -use the UI 'task explorer' to get a interactive interface +Use the UI 'task explorer' to get an interactive interface about tasks. \begin{verbatim} -bitbake -g -u taskexp <target> +bitbake -g -u taskexp <recipe> \end{verbatim} \end{frame} \begin{frame}[fragile] -\frametitle{developer shell} +\frametitle{Developer Shell} \begin{verbatim} -bitbake <recipe> -c devshell +bitbake -c devshell <recipe> \end{verbatim} -use ./configure and make to debug build issues +Use ./configure and make to debug build issues. \end{frame} -\begin{frame}[fragile] -\frametitle{cleanup} -\begin{verbatim} -% bitbake -c clean core-image-minimal -\end{verbatim} -\begin{itemize} -\item doesn't cleanup dependencies -\item doesn't remove deployed files -\item triggers repackaging of all packages -\end{itemize} +%\begin{frame}[fragile] +%\frametitle{Cleanup} +%\begin{verbatim} +%% bitbake -c clean core-image-minimal +%\end{verbatim} +%\begin{itemize} +%\item doesn't cleanup dependencies +%\item doesn't remove deployed files +%\item triggers repackaging of all packages +%\end{itemize} +% +%\vspace{2em} +%To start from scratch backup the conf directory +%and remove everything from build. Otherwise +%sstate-cache will be used. +%\end{frame} -\vspace{2em} -To start from scratch backup the conf directory -and remove everything from build. Otherwise -sstate-cache will be used. -\end{frame} +%\begin{frame}[fragile] +%\frametitle{Cleanup} +%\begin{verbatim} +%% bitbake -c clean xserver-nodm-init +%\end{verbatim} +%\begin{itemize} +%\item doesn't cleanup dependencies +%\item removes deployed files +%\item removes downloaded files +%\item removes data from work and sysroot directory +%\item doesn't remove data from sstate +%\item triggers restoring files from sstate-cache +%\end{itemize} +%\end{frame} -\begin{frame}[fragile] -\frametitle{cleanup} -\begin{verbatim} -% bitbake -c clean xserver-nodm-init -\end{verbatim} -\begin{itemize} -\item doesn't cleanup dependencies -\item removes deployed files -\item removes downloaded files -\item removes data from work and sysroot directory -\item doesn't remove data from sstate -\item triggers restoring files from sstate-cache -\end{itemize} -\end{frame} - -\begin{frame}[fragile] -\frametitle{cleanup} -\begin{verbatim} -% bitbake -c cleanall xserver-nodm-init -\end{verbatim} -\begin{itemize} -\item doesn't cleanup dependencies -\item removes deployed files -\item removes downloaded files -\item removes data from work and sysroot directory -\item removes data from sstate-cache -\item triggers fetch, compilation and packaging of the component -\item BUT changes will not be in the image -\end{itemize} -\end{frame} +%\begin{frame}[fragile] +%\frametitle{Cleanup} +%\begin{verbatim} +%% bitbake -c cleanall xserver-nodm-init +%\end{verbatim} +%\begin{itemize} +%\item doesn't cleanup dependencies +%\item removes deployed files +%\item removes downloaded files +%\item removes data from work and sysroot directory +%\item removes data from sstate-cache +%\item triggers fetch, compilation and packaging of the component +%\item BUT changes will not be in the image +%\end{itemize} +%\end{frame} \begin{frame}[fragile] -\frametitle{force recompilation} +\frametitle{Force Tasks} +Force the compile task of the xserver-nodm-init recipe: \begin{verbatim} % bitbake -f -c compile xserver-nodm-init \end{verbatim} |
