mirror of
https://git.yoctoproject.org/poky
synced 2026-04-25 15:32:13 +02:00
There are many references to YP documentation throughout the YP manual set. They used to have hard-coded links to the current release (e.g. yoctoproject.org/docs/1.1 for Edison). This created a situation where if you went to a document on the website and clicked on a external reference to another manual, you would redirect to the current manual on the website. Really, you would want to go to the latest manual, which is one that is under development. Changing the links to "yoctoproject.org/docs/latest" makes the tip of master, which is used for devloping the next release, always have references to the manuals being developed and not back to the stable released set of manuals. This "latest" and "current" scheme for the links is not perfect. What has to happen when the latest set of the manuals freezes and becomes the next stable release, all the links in the docs will need to be changed from "latest" in the URL to the new release number. So for example, all the "latest" occurences would need to be changed to "1.2". Then for the next cycle as development begins again, the links need to be infused with "latest" again. (From yocto-docs rev: a234aef34303b07671da956de0e94b352797143e) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
100 lines
4.7 KiB
XML
100 lines
4.7 KiB
XML
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||
|
||
<chapter id='adt-package'>
|
||
<title>Optionally Customizing the Development Packages Installation</title>
|
||
|
||
<para>
|
||
Because the Yocto Project is suited for embedded Linux development, it is
|
||
likely that you will need to customize your development packages installation.
|
||
For example, if you are developing a minimal image, then you might not need
|
||
certain packages (e.g. graphics support packages).
|
||
Thus, you would like to be able to remove those packages from your target sysroot.
|
||
</para>
|
||
|
||
<section id='package-management-systems'>
|
||
<title>Package Management Systems</title>
|
||
|
||
<para>
|
||
The Yocto Project supports the generation of sysroot files using
|
||
three different Package Management Systems (PMS):
|
||
<itemizedlist>
|
||
<listitem><para><emphasis>OPKG:</emphasis> A less well known PMS whose use
|
||
originated in the OpenEmbedded and OpenWrt embedded Linux projects.
|
||
This PMS works with files packaged in an <filename>.ipk</filename> format.
|
||
See <ulink url='http://en.wikipedia.org/wiki/Opkg'></ulink> for more
|
||
information about OPKG.</para></listitem>
|
||
<listitem><para><emphasis>RPM:</emphasis> A more widely known PMS intended for GNU/Linux
|
||
distributions.
|
||
This PMS works with files packaged in an <filename>.rms</filename> format.
|
||
The Yocto Project currently installs through this PMS by default.
|
||
See <ulink url='http://en.wikipedia.org/wiki/RPM_Package_Manager'></ulink>
|
||
for more information about RPM.</para></listitem>
|
||
<listitem><para><emphasis>Debian:</emphasis> The PMS for Debian-based systems
|
||
is built on many PMS tools.
|
||
The lower-level PMS tool <filename>dpkg</filename> forms the base of the Debian PMS.
|
||
For information on dpkg see
|
||
<ulink url='http://en.wikipedia.org/wiki/Dpkg'></ulink>.</para></listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
</section>
|
||
|
||
<section id='configuring-the-pms'>
|
||
<title>Configuring the PMS</title>
|
||
|
||
<para>
|
||
Whichever PMS you are using, you need to be sure that the
|
||
<filename>PACKAGE_CLASSES</filename> variable in the <filename>conf/local.conf</filename>
|
||
file is set to reflect that system.
|
||
The first value you choose for the variable specifies the package file format for the root
|
||
filesystem at sysroot.
|
||
Additional values specify additional formats for convenience or testing.
|
||
See the configuration file for details.
|
||
</para>
|
||
|
||
<note>
|
||
For build performance information related to the PMS, see
|
||
<ulink url='http://www.yoctoproject.org/docs/latest/poky-ref-manual/poky-ref-manual.html#ref-classes-package'>Packaging - <filename>package*.bbclass</filename></ulink>
|
||
in <ulink url='http://www.yoctoproject.org/docs/latest/poky-ref-manual/poky-ref-manual.html'>
|
||
The Yocto Project Reference Manual</ulink>.
|
||
</note>
|
||
|
||
<para>
|
||
As an example, consider a scenario where you are using OPKG and you want to add
|
||
the <filename>libglade</filename> package to the target sysroot.
|
||
</para>
|
||
|
||
<para>
|
||
First, you should generate the <filename>ipk</filename> file for the
|
||
<filename>libglade</filename> package and add it
|
||
into a working <filename>opkg</filename> repository.
|
||
Use these commands:
|
||
<literallayout class='monospaced'>
|
||
$ bitbake libglade
|
||
$ bitbake package-index
|
||
</literallayout>
|
||
</para>
|
||
|
||
<para>
|
||
Next, source the environment setup script found in the Yocto Project files.
|
||
Follow that by setting up the installation destination to point to your
|
||
sysroot as <filename><sysroot_dir></filename>.
|
||
Finally, have an OPKG configuration file <filename><conf_file></filename>
|
||
that corresponds to the <filename>opkg</filename> repository you have just created.
|
||
The following command forms should now work:
|
||
<literallayout class='monospaced'>
|
||
$ opkg-cl –f <conf_file> -o <sysroot_dir> update
|
||
$ opkg-cl –f <cconf_file> -o <sysroot_dir> \
|
||
--force-overwrite install libglade
|
||
$ opkg-cl –f <cconf_file> -o <sysroot_dir> \
|
||
--force-overwrite install libglade-dbg
|
||
$ opkg-cl –f <conf_file> -o <sysroot_dir> \
|
||
--force-overwrite install libglade-dev
|
||
</literallayout>
|
||
</para>
|
||
</section>
|
||
</chapter>
|
||
<!--
|
||
vim: expandtab tw=80 ts=4
|
||
-->
|