[yocto] Build external module against Yocto kernel

Darren Hart dvhart at linux.intel.com
Wed Jan 16 09:11:48 PST 2013



On 01/15/2013 10:38 AM, Bruce Ashfield wrote:
> 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 :)
> 

Thanks for keeping this going Bruce. Yes, kernel-dev is the package for
the target. The only trick here is that we currently purge the host
binaries which means that you need to build scripts on the target prior
to building the module.

I think this might be missing from the new kernel manual as it isn't a
particularly common use-case, and is rather orthogonal to the way the
tooling has been designed (not to say it can't be done).

Patrick, please keep us posted if this continues to not work for you. I
will open a bug to include a section about this in the kernel
development manual.

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Technical Lead - Linux Kernel



More information about the yocto mailing list