All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Siegumfeldt <mns@gomspace.com>
To: Andrea Galbusera <gizero@gmail.com>
Cc: "yocto@yoctoproject.org" <yocto@yoctoproject.org>
Subject: Re: Recipe availability through eSDK (cppzmq)
Date: Wed, 2 May 2018 12:33:19 +0000	[thread overview]
Message-ID: <DB6PR0402MB2728A67E8A29394515D90449C4800@DB6PR0402MB2728.eurprd04.prod.outlook.com> (raw)
In-Reply-To: <CAC+thW1U42nj0aoDd56Vzi2-1Bpto0JDmtpSx2p8pmDgV7PB-g@mail.gmail.com>

Hi Andrea,

You are right, the recipe works-as-is, when adding 'cppzmq-dev' to the image rather than just 'cppzmq' - I was not aware of this. From an eSDK perspective it seems to work when the package is installed according to

devtool sdk-install -s cppzmq

and then adding 'IMAGE_INSTALL += "cppzmq-dev"' to local.conf.

On the variables passed in from the shell, can you refer to the location of this whitelist - for future reference?

Thanks for your support - highly appreciated.
Martin


From: Andrea Galbusera <gizero@gmail.com>
Sent: Wednesday, May 2, 2018 10:33
To: Martin Siegumfeldt
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] Recipe availability through eSDK (cppzmq)
  

On Wed, May 2, 2018 at 9:52 AM, Martin Siegumfeldt <mns@gomspace.com> wrote:
> Hi,
>
>
> Hacking the recipe according to:
>
>
> martin@dell:~/work/z7000-distro-zcu102/meta-openembedded$ git diff
> diff --git a/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
> b/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
> index a64745c94..aba1d6edb 100644
> --- a/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
> +++ b/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
> @@ -13,9 +13,11 @@ S = "${WORKDIR}/git"
>
>  do_install () {
>          install -d ${D}/usr/include
> +        install -d ${D}/etc
>          install -m 0755 ${S}/zmq.hpp ${D}/usr/include/
> +        install -m 0755 ${S}/zmq.hpp ${D}/etc
>  }
>
> -PACKAGES = "${PN}-dev"
> +PACKAGES = "${PN}-dev ${PN}"

If you go down the patch-the-recipe way, you can probably leave
PACKAGES at its default: both ${PN} and ${PN}-dev are there by
default.

> RDEPENDS_${PN}-dev = "zeromq-dev"
>
> triggers both ${PN}-dev and ${PN} variants to be packaged and included by
> the image. Leaving out the installation into /etc causes ${PN} package not
> to be generated and the image generation does not pick up the ${PN}-dev
> variant.

Better would be adding:

ALLOW_EMPTY_${PN} = "1"

This way it's cleaner and should work as well. However, you'll need to
force your image to depend upon an empty package to be added
(meaningless for the target), for the sake of the corresponding -dev
package to be part of the tailored eSDK... Maybe there's a better way
to achieve this, possibly by adding cppzmq-dev to the SDK explicitly
with something like TOOLCHAIN_TARGET_TASK_append (never used it in
practice though). Hopefully someone can further comment on this to add
some wisdom.

> In essence, it looks like image generation disregards recipes residing
> exclusively in the ${PN}-dev variant - question is whether this is intended
> or not?

Yes it is. -dev packages are not intended to be installed into target
image by design.

>
>
> Br,
>
> Martin
>
>
> ________________________________
> From: Martin Siegumfeldt
> Sent: Tuesday, May 1, 2018 8:49:17 PM
> To: Andrea Galbusera
>
> Cc: yocto@yoctoproject.org
> Subject: Re: [yocto] Recipe availability through eSDK (cppzmq)
>
>
> Hi Andrea,
>
>
>
> ________________________________
> From: Andrea Galbusera <gizero@gmail.com>
> Sent: Tuesday, May 1, 2018 16:06
> To: Martin Siegumfeldt
> Cc: yocto@yoctoproject.org
> Subject: Re: [yocto] Recipe availability through eSDK (cppzmq)
>
> Hi Martin,
>
> On Mon, Apr 30, 2018 at 9:10 PM, Martin Siegumfeldt <mns@gomspace.com>
> wrote:
>> Hi,
>>
>> I am trying to build cppzmq through a Yocto (Rocko) generated eSDK. The
>> search function does not return anything, despite the recipe being available
>> through local recipe:
>>
>> martin@dell:~/gomspace_sdk$ ls
>> layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/
>> cppzmq_git.bb  files  zeromq_4.1.6.bb
>>
>> I assume this is expected since it does not come prebuilt as part of the
>> eSDK - is this correct understood?
>>
>> Fortunately, 'devtool modify/build/package' generates the package -
>> unfortunately it is not included in the subsequent image generation:
>>
>> martin@dell:~/gomspace_sdk$ devtool package cppzmq
>> NOTE: Starting bitbake server...
>> NOTE: Starting bitbake server...
>> WARNING: Host distribution "ubuntu-17.10" has not been validated with this
>> version of the build system; you may possibly experience unexpected
>> failures. It is recommended that you use a tested distribution.
>> Loading cache: 100%
>> |########################################################################################################################################################################|
>> Time: 0:00:03
>> Loaded 2773 entries from dependency cache.
>> Parsing recipes: 100%
>> |######################################################################################################################################################################|
>> Time: 0:00:01
>> Parsing of 1968 .bb files complete (1960 cached, 8 parsed). 2780 targets,
>> 305 skipped, 11 masked, 0 errors.
>> NOTE: Resolving any missing task queue dependencies
>> Initialising tasks: 100%
>> |###################################################################################################################################################################|
>> Time: 0:00:00
>> Checking sstate mirror object availability: 100%
>> |###########################################################################################################################################|
>> Time: 0:00:00
>> NOTE: Executing SetScene Tasks
>> NOTE: Executing RunQueue Tasks
>> NOTE: Tasks Summary: Attempted 492 tasks of which 491 didn't need to be
>> rerun and all succeeded.
>>
>> Summary: There was 1 WARNING message shown.
>> NOTE: Your packages are in /home/martin/gomspace_sdk/tmp/deploy/ipk
>>
>> martin@dell:~/gomspace_sdk$ devtool build-image
>> NOTE: Starting bitbake server...
>> WARNING: Host distribution "ubuntu-17.10" has not been validated with this
>> version of the build system; you may possibly experience unexpected
>> failures. It is recommended that you use a tested distribution.
>> Loading cache: 100%
>> |########################################################################################################################################################################|
>> Time: 0:00:00
>> Loaded 2773 entries from dependency cache.
>> Parsing recipes: 100%
>> |######################################################################################################################################################################|
>> Time: 0:00:02
>> Parsing of 1968 .bb files complete (1960 cached, 8 parsed). 2780 targets,
>> 305 skipped, 11 masked, 0 errors.
>>
>> Summary: There was 1 WARNING message shown.
>> WARNING: Skipping recipe cppzmq as it doesn't produce a package with the
>> same name
>
> This is the suspicious bit... If you look at the recipe, you'll notice
> it's re-defining the PACKAGES variable. Then, it's not generating a
> package called 'cppzmq', but only one named 'cppzmq-dev'. That said,
> I'm not sure why you'd want to add a package which only provides
> development headers to your target image...
>
> I understand your doubt here. The header file installed is a wrapper around
> zeromq and thus DEPENDS/RDEPENDS on this library. zeromq is included in the
> image, for which the SDK is generated, hence I would expect this to be a
> valid use case?
>
> Anyhow, I realized that the recipe does not even work in a BB environment -
> the following is encountered for an image including the package:
>
> ERROR: Nothing RPROVIDES 'cppzmq' (but
> /home/martin/work/z7000-distro-zcu102/poky/meta/recipes-core/images/core-image-minimal.bb
> RDEPENDS on or otherwise requires it)
> NOTE: Runtime target 'cppzmq' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['cppzmq']
> ERROR: Required build target 'core-image-minimal' has no buildable
> providers.
> Missing or unbuildable dependency chain was: ['core-image-minimal',
> 'cppzmq']
>
> I wonder why this occurs when the recipe is indeed present:
>
> martin@dell:~/work/z7000-distro-zcu102/build$ bitbake-layers  show-recipes
> cppzmq
> NOTE: Starting bitbake server...
> WARNING: Host distribution "ubuntu-17.10" has not been validated with this
> version of the build system; you may possibly experience unexpected
> failures. It is recommended that you use a tested distribution.
> Loading cache: 100%
> |########################################################################################################################################################################|
> Time: 0:00:00
> Loaded 2773 entries from dependency cache.
> Parsing recipes: 100%
> |######################################################################################################################################################################|
> Time: 0:00:01
> Parsing of 1968 .bb files complete (1961 cached, 7 parsed). 2780 targets,
> 305 skipped, 11 masked, 0 errors.
>
> Summary: There was 1 WARNING message shown.
> === Matching recipes: ===
> cppzmq:
>   meta-oe              4.1.5+gitAUTOINC+68a7b09cfc
>
> Br,
> Martin
>
>>
>> Inspecting the manifest file confirms that the package is not installed -
>> any idea why not? I also tried installing though sdk-install:
>>
>> martin@dell:~/gomspace_sdk$ devtool sdk-install -s cppzmq
>> NOTE: Starting bitbake server...
>> WARNING: Host distribution "ubuntu-17.10" has not been validated with this
>> version of the build system; you may possibly experience unexpected
>> failures. It is recommended that you use a tested distribution.
>> Loading cache: 100%
>> |########################################################################################################################################################################|
>> Time: 0:00:00
>> Loaded 2773 entries from dependency cache.
>> Parsing recipes: 100%
>> |######################################################################################################################################################################|
>> Time: 0:00:02
>> Parsing of 1968 .bb files complete (1961 cached, 7 parsed). 2780 targets,
>> 305 skipped, 11 masked, 0 errors.
>>
>> Summary: There was 1 WARNING message shown.
>> NOTE: Installing cppzmq...
>> WARNING: Host distribution "ubuntu-17.10" has not been validated with this
>> version of the build system; you may possibly experience unexpected
>> failures. It is recommended that you use a tested distribution.
>> Loading cache: 100%
>> |########################################################################################################################################################################|
>> Time: 0:00:03
>> Loaded 2773 entries from dependency cache.
>> Parsing recipes: 100%
>> |######################################################################################################################################################################|
>> Time: 0:00:01
>> Parsing of 1968 .bb files complete (1961 cached, 7 parsed). 2780 targets,
>> 305 skipped, 11 masked, 0 errors.
>> NOTE: Resolving any missing task queue dependencies
>> Initialising tasks: 100%
>> |###################################################################################################################################################################|
>> Time: 0:00:00
>> Checking sstate mirror object availability: 100%
>> |###########################################################################################################################################|
>> Time: 0:00:00
>> NOTE: Executing SetScene Tasks
>> NOTE: Executing RunQueue Tasks
>> NOTE: Tasks Summary: Attempted 487 tasks of which 477 didn't need to be
>> rerun and all succeeded.
>>
>> Summary: There was 1 WARNING message shown.
>> NOTE: Successfully installed cppzmq
>>
>> Which also does not pick up the package upon image building:
>>
>> martin@dell:~/gomspace_sdk$ IMAGE_INSTALL_append="cppzmq" devtool
>> build-image
>> NOTE: Starting bitbake server...
>> WARNING: Host distribution "ubuntu-17.10" has not been validated with this
>> version of the build system; you may possibly experience unexpected
>> failures. It is recommended that you use a tested distribution.
>> Loading cache: 100%
>> |########################################################################################################################################################################|
>> Time: 0:00:00
>> Loaded 2773 entries from dependency cache.
>> Parsing recipes: 100%
>> |######################################################################################################################################################################|
>> Time: 0:00:02
>> Parsing of 1968 .bb files complete (1961 cached, 7 parsed). 2780 targets,
>> 305 skipped, 11 masked, 0 errors.
>>
>> Summary: There was 1 WARNING message shown.
>> WARNING: No packages to add, building image nanocom-sdr-image unmodified
>>
>> What am I missing here?
>>
>> Thanks,
>> Martin
>> --
>> _______________________________________________
>> yocto mailing list
>> yocto@yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/yocto
    

  reply	other threads:[~2018-05-02 13:05 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-30 19:10 Recipe availability through eSDK (cppzmq) Martin Siegumfeldt
2018-05-01 14:06 ` Andrea Galbusera
2018-05-01 18:49   ` Martin Siegumfeldt
2018-05-02  7:52     ` Martin Siegumfeldt
2018-05-02  8:33       ` Andrea Galbusera
2018-05-02 12:33         ` Martin Siegumfeldt [this message]
2018-05-02 14:22           ` Andrea Galbusera
2018-05-02 21:19         ` Paul Eggleton
2018-05-04  3:26           ` Trevor Woerner
2018-05-04  3:27             ` Paul Eggleton
2018-05-02  8:00     ` Andrea Galbusera

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DB6PR0402MB2728A67E8A29394515D90449C4800@DB6PR0402MB2728.eurprd04.prod.outlook.com \
    --to=mns@gomspace.com \
    --cc=gizero@gmail.com \
    --cc=yocto@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.