[yocto] Yocto and Google protobuffer

Maciej Borzęcki maciej.borzecki at rndity.com
Thu Sep 1 02:02:10 PDT 2016


On Thu, Sep 1, 2016 at 10:40 AM, Pietro <pulsarpietro at posteo.net> wrote:
> Maciej Borzęcki
> <maciej.borzecki at rndity.com> writes:
>
>> On Wed, Aug 31, 2016 at 6:44 PM, Pietro <pulsarpietro at posteo.net> wrote:
>>> Hi all,
>>>
>>> I am new to the Yocto building system and I could be talking nonsense. I
>>> used to work with buildroot time ago and I remember there is an area
>>> where compiled software/packages/tools previously built are "staged" and
>>> used when building other packages.
>>>
>>> Is there something like that available with Yocto ? Specifically I would
>>> like to add a package which uses the Google Protocol Buffer, I do not have
>>> administrator rights on the machine and I can't install the packages I
>>> need system wise.
>>>
>>> Is it possible to add recipes and use them at building time without
>>> including them in the image being generated ?
>>>
>>> A good example for that would be the protoc, the protocol buffer description
>>> file compiler.
>>>
>>
>> There is a recipe for protobuf in meta-oe (2.6.1). All you need to do,
>> is include meta-oe in your layers (bblayers.conf) and have
>> protobuf-native listed in DEPENDS inside your package recipe.
>>
>> The protoc compiler will be available in the PATH when package is
>> being built, so autotools checks like AC_CHECK_PROG/AC_PATH_PROG
>> should be able to find it.
>>
>> Cheers,
>> --
>> Maciej Borzecki
>> RnDity
> Thanks a lot.
>
> I have added the DEPENDS line and it indeed downloads and build the some
> protobuf related stuff, where did you get the dependency name from ?
> I can't see the protobuf-native as a recipe in the meta-oe website :
>
> https://layers.openembedded.org/layerindex/branch/master/layer/meta-oe/

It's just a mechanism that allows for building the native (i.e. for
the host) packages, and these are autmatically named ${PN}-native.
There should a BBCLASSEXTEND = "..native.." stanza inside the protobuf
recipe that enables this feature.

>
> I have just realised that GRPC (http://www.grpc.io/) is needed for my
> project, it is a library which uses the protobuffers, is there a
> recipe/package which provides them around or do I need to create my own
> recipe ?

You can try searching for a recipe at http://layers.openembedded.org
If there's none, try to write your own. This might be a good changes
to get yourself acquainted with `devtool` tool that will help you in
the process.

>
> I would like to check the root filesystem being generated as part of the
> build process, where is it ?
>

${TMPDIR}/<machine>_<distro?>/<imagename>/../rootfs

for instance, for my current build:

tmp/work/vexpress_qemu-poky-linux-gnueabi/core-image-minimal/1.0-r0/rootfs

-- 
Maciej Borzecki
RnDity



More information about the yocto mailing list