Bug 3559

Summary: Add documentation for SDK content changes
Product: [Documentation] ADT Manual Reporter: Reinette Chatre <reinette.chatre>
Component: SDKAssignee: Jessica <jessica.zhang>
Status: VERIFIED MOVED QA Contact:
Severity: enhancement    
Priority: Medium CC: alexandru.c.georgescu, poky.doc.watcher, poky.watcher, sgw
Version: unspecified   
Target Milestone: 1.5   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---
Attachments:
Description Flags
email exchange none

Description Reinette Chatre 2012-12-10 22:19:54 UTC
I recently had to go through the exercise of adding an item to the SDK. I could not find any documentation related to this apart from some hints in the BBCLASSEXTEND variable in the Poky reference manual. I could not find anything in the ADT manual.

Some items that I think would be nice to elaborate on:
- Applications to run on "host" needs to be built in a special way ... would be nice to have documentation how to add a host application to the SDK.
- For applications running on the target, the SDK contains a sysroot that is hardcoded, no matter what is included in your image. Sometimes a user may want to add a library in this category so that applications can be built on the host to be run on the target and to do this the library is required to be in the sysroot. This is the task I tried to figure out how to do and was not able to find any documentation. In the end it was accomplished with one line to local.conf:

TOOLCHAIN_TARGET_TASK_append = " mylibrary"
Comment 1 Jessica 2013-02-28 06:30:10 UTC
Hi Reinette,

For target library to be added into sysroot, can you add them as packages into the target image file.  And then now we can do "bitbake image -c populate_sdk" which allows you to generate sdk with sysroot matching your target image package contents?

As for your request of adding host application into sdk, I'm not quite sure about it since SDK is meant to be used for cross development, for host side, are you talking about things like cross-toolchain?
Comment 2 Reinette Chatre 2013-03-01 18:06:56 UTC
(In reply to comment #1)
> For target library to be added into sysroot, can you add them as packages
> into the target image file.  And then now we can do "bitbake image -c
> populate_sdk" which allows you to generate sdk with sysroot matching your
> target image package contents?

We are planning an upgrade to Yocto 1.4 in April so I will be able to make use of this feature then.

> As for your request of adding host application into sdk, I'm not quite sure
> about it since SDK is meant to be used for cross development, for host side,
> are you talking about things like cross-toolchain?

We see the SDK as much more than something used for cross development. We see the SDK as everything that runs on the host that forms part of the project, that supports the developer, and that supports the testers. When we build an image we end up with three artifacts: kernel, rootfs, "SDK". The kernel and rootfs are for the target and we consider the SDK as everything for the host. Here are some examples of things we use the host ("SDK") software for:
* Host utilities that can easily set up and support network booting image.
* Networked applications that will run on the host with which the target communicates once it has booted the new image.
* Acceptance test management infrastructure as well as acceptance tests that will be run from host to interact and verify images on target after boot.
* Host utilities that can support rootfs manipulation (read: developer customization).
* We have more but I hope the above will get us started.
Comment 3 Jessica 2013-03-04 22:32:30 UTC
To be clear, for host application(s) since they need to be built in a special way, is it building using Yocto as well or you just want to include the built application into the SDK?  Also, mark this as an enhancement instead of a bug.
Comment 4 Reinette Chatre 2013-03-05 08:06:57 UTC
(In reply to comment #3)
> To be clear, for host application(s) since they need to be built in a
> special way, is it building using Yocto as well or you just want to include
> the built application into the SDK?

If I understand your question I believe we would like to use both. Some are binary applications that need to be compiled for host platform while others are scripts that do not need to be compiled.
Comment 5 Jessica 2013-04-30 18:04:47 UTC
Created attachment 1206 [details]
email exchange
Comment 6 Jessica 2013-04-30 18:06:18 UTC
Per email exchange (attached), we're closing the bug since the issue should have been resolved in 1.4 and they'll move their project to 1.4.  If there's still issue, a new bug will be opened to track
Comment 7 Alexandru Georgescu 2013-06-28 10:40:39 UTC
Setting this to verified as per above comments.