[yocto] Build external module against Yocto kernel

Zhang, Jessica jessica.zhang at intel.com
Tue Jan 15 11:16:53 PST 2013


Hi Patrick,

According to bug 1614, the kernel dev packages should be included in sdk images.  Please generate your toolchain using "bitbake core-image-sato-sdk -c populate_sdk" which will make the toolchain target sysroot matching your image's sysroot (this is a new feature of 1.3) as long as your image is a sdk image.  If you still run into issue(missing kernel headers, etc.), then that's a bug of the 1614 patch that we need to reopen it.

For your LDFLAGS question in another email thread, the yocto SDK is mainly produced for application developer, but seems we are hearing more usage request for it to support kernel module build as well.  As Eric pointed, can you just set LDFLAGS="" and we'll add that instruction to developer's manual?

Thanks,
Jessica

-----Original Message-----
From: yocto-bounces at yoctoproject.org [mailto:yocto-bounces at yoctoproject.org] On Behalf Of Bruce Ashfield
Sent: Tuesday, January 15, 2013 10:38 AM
To: Patrick Turley
Cc: yocto at yoctoproject.org; Darren Hart; Brian Lloyd
Subject: Re: [yocto] Build external module against Yocto kernel

On 13-01-15 01:26 PM, Patrick Turley wrote:
> On Jan 15, 2013, at 12:00 PM, Bruce Ashfield <bruce.ashfield at windriver.com>
>   wrote:
>
>> On 13-01-15 12:54 PM, Patrick Turley wrote:
>>> Thank you for directing me toward that documentation. As it happens,
>>> I have already read that, and it doesn't apply.
>>
>> There are ways to do this, your requirement is the same as the
>> on-target module building requirement. Have enough of the kernel
>> source packaged to build modules on the target, after it has booted.
>
> Well, I still want to cross-compile them, but I see your point.
>
>> The trick is packaging things properly to not get binary/target
>> elements in the SDK/native packages, and to package just enough for
>> the build. But the issues have been explored and there was a plan. I
>> know that Darren
>> (cc'd) has looked into this more than I have recently.
>>
>> I can't locate the bugzilla entries on this at the moment, but I
>> recall that some parts were still missing, but may be addressed in
>> yocto 1.4, when I find the bug numbers, I'll have a better idea.
>
> As I expected, someone else has already thought about this. This isn't the most common approach so it makes sense that it's been a lower priority. The good news for me is that I know I'm not missing something, so I can stop looking for it.

I finally found the entries that I was recalling earlier. They are:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=241
https://bugzilla.yoctoproject.org/show_bug.cgi?id=1614
https://bugzilla.yoctoproject.org/show_bug.cgi?id=2968

1614 and 2968 are the most interesting for what you are asking.

As you can see the net result of those bugs is that you can get the right parts of the kernel tree in SDK packages, since they include dev packages, and with what is currently in kernel-dev .. it should be enough to build against in the SDK (perhaps with just the LDFLAGS tweaks mentioned in the other thread). The sources should be part of the sysroot, and hence available when that is packaged for use outside of bitbake/yocto.

If you aren't seeing kernel-dev in the SDK image, it might be that TOOLCHAIN_TARGET_TASK doesn't have kernel-dev by default, or something else is different in the SDK that is being generated in your testing.

I'm only speculating about what might be missing, since I'm not 100% familiar with the SDK, but perhaps Jessica or others can chime in if I've led you astray :)

Cheers,

Bruce


>

_______________________________________________
yocto mailing list
yocto at yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto



More information about the yocto mailing list