All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rudolf J Streif <rudolf.streif@ibeeto.com>
To: berthold-yocto@xn--hllmanns-n4a.de, yocto@yoctoproject.org
Subject: Re: Yocto newbie: Need help with recipe
Date: Fri, 8 Nov 2019 05:05:59 -0800	[thread overview]
Message-ID: <e08fa9f0-502f-8c10-d0f3-2bc7e249d85e@ibeeto.com> (raw)
In-Reply-To: <87imnuirmq.fsf@xn--hllmanns-n4a.de>


[-- Attachment #1.1.1: Type: text/plain, Size: 6192 bytes --]

I suppose you just removed setting the PACKAGES variable from your recipe?

You are including

require recipes-qt/qt5/qt5.inc

which redefines the PACKAGES variable adding a ${PN}-tools package that
consumes what's in {bindir}. I am not sure why you are including qt5.inc as

DEPENDS += "qtbase"

should suffice to build against Qt. qt5.inc is for building Qt itself.

:rjs

On 11/8/19 2:34 AM, Berthold Höllmann wrote:
> Rudolf Streif <rudolf.streif@ibeeto.com> writes:
>
>> Hi Berthold,
>>
>> Welcome to the Yocto Project.
> Thank You
>
>> This line is the problem with your recipe:
>>
>> PACKAGES = "${PN}"
>>
>> This tells the build system to only create one package, the default
>> package. Because this line FILES_${PN} = "${bindir}" tells the build system
>> to include everything in ${bindir} into that package the package also
>> includes the .debug directory which is then flagged by the QA checker. To
>> fix this:
>>
>> PACKAGES = "${PN}-dbg ${PN}"
>>
>> You have to specify the debug package before the default package as the
>> variable is processed from left to right and whatever is consumed by a
>> package will not be packaged anymore. However, even simpler is to remove
>> the PACKAGES line altogether as the default already does it correctly.
>>
>> Best regards,
>> :rjs
> OK, the project is building now, but for some reasons the generated
> executable is ending up in the wrong package (I renamed executable and
> recipes in order to try to fix this):
>
> build@812ee6d53ca8:~/shared/rpi/rpi2-build$ dpkg -c tmp/deploy/ipk/cortexa7t2hf-neon-vfpv4/lissajousexplorer_git-r0_cortexa7t2hf-neon-vfpv4.ipk 
> drwxrwxrwx root/root         0 2019-11-08 10:04 ./
> build@812ee6d53ca8:~/shared/rpi/rpi2-build$ dpkg -c tmp/deploy/ipk/cortexa7t2hf-neon-vfpv4/lissajousexplorer-tools_git-r0_cortexa7t2hf-neon-vfpv4.ipk 
> drwxrwxrwx root/root         0 2019-11-08 10:04 ./
> drwxr-xr-x root/root         0 2019-11-08 10:03 ./usr/
> drwxr-xr-x root/root         0 2019-11-08 10:03 ./usr/bin/
> -rwxr-xr-x root/root     38392 2019-11-08 10:03 ./usr/bin/lissajousexplorer
>
> The executable is ending up in the "lissajousexplorer-tools" package,
> instead of the "lissajousexplorer" package, why is that?
>
> Best regards,
> Berthold
>
>>
>>
>> On Thu, Nov 7, 2019 at 12:04 PM Berthold Höllmann <
>> berthold-yocto@höllmanns.de> wrote:
>>
>>> Hello,
>>>
>>> I'm trying my way around yocto. I thought I try adding a small project
>>> of mine to a Raspberry Pi image as a first try in writing recipes. At
>>> least I managed to get the project compiling, but the generation of the
>>> packages is failing:
>>>
>>> $ bitbake  qtlissajous
>>> ...
>>> ERROR: qtlissajous-git-r0 do_package_qa: QA Issue: non debug package
>>> contains .debug directory: qtlissajous path
>>> /work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/qtlissajous/git-r0/packages-split/qtlissajous/usr/bin/.debug/lissajous_explorer
>>> [debug-files]
>>> ERROR: qtlissajous-git-r0 do_package_qa: QA run found fatal errors. Please
>>> consider fixing them.
>>> ERROR: qtlissajous-git-r0 do_package_qa:
>>> ERROR: qtlissajous-git-r0 do_package_qa: Function failed: do_package_qa
>>> ERROR: Logfile of failure stored in:
>>> /home/build/shared/rpi/rpi2-build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/qtlissajous/git-r0/temp/log.do_package_qa.4823
>>> ERROR: Task
>>> (/home/build/shared/rpi/meta-qtlissajous/recipes-qtlissajous/qtlissajous/qtlissajous_git.bb:do_package_qa)
>>> failed with exit code '1'
>>> ...
>>>
>>> $ (cd
>>> /home/build/shared/rpi/rpi2-build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/qtlissajous/git-r0/packages-split/;find
>>> -type f)
>>>
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/build/moc_doubleslider.cpp
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/build/moc_phaselabel.cpp
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/doubleslider.cpp
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/doubleslider.h
>>>
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/lissajous_explorer.cpp
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/lissajous_explorer.h
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/lissajous_grid.cpp
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/lissajous_grid.h
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/main.cpp
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/phaselabel.cpp
>>> ./qtlissajous-src/usr/src/debug/qtlissajous/git-r0/git/phaselabel.h
>>> ./qtlissajous-tools/usr/bin/lissajous_explorer
>>> ./qtlissajous/usr/bin/.debug/lissajous_explorer
>>> ./qtlissajous-tools.shlibdeps
>>>
>>> My qtlissajous_git.gg file is:
>>>
>>> -------------------------------------------------------
>>> DESCRIPTION = "Explore Lissajous figures for Raspberry Pi"
>>> SECTION = "games"
>>> DEPENDS += "qtbase"
>>>
>>> PACKAGES = "${PN}"
>>>
>>> LICENSE = "MIT"
>>> LIC_FILES_CHKSUM =
>>> "file://LICENSE;md5=7e26fc87b2c255632232dc535ed2700b;sha256=c8ea5a5ce0ef734ec1d0be3e214bed71673f1ffc628fe86bbd055d61abd52cc8"
>>>
>>> FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:"
>>>
>>> SRCREV = "${AUTOREV}"
>>> SRC_URI = "git://gitlab.com/bhoel/qlissajousexplorer.git;protocol=https"
>>>
>>> S = "${WORKDIR}/git"
>>>
>>> require recipes-qt/qt5/qt5.inc
>>>
>>> FILES_${PN} = "${bindir}"
>>> FILES_${PN}-dbg += "${bindir}/.debug"
>>>
>>> do_install() {
>>>       install -d ${D}/usr/bin
>>>       install -m 0755 lissajous_explorer ${D}/usr/bin
>>> }
>>>
>>> RDEPENDS_${PN} = "qtbase-plugins"
>>> -------------------------------------------------------
>>>
>>> Why is the release executable ending up in the tools tree?
>>> Why is the debug executable ending up in the release tree?
>>> Is this the right place to ask this kind of questions?
>>>
>>> Thank you
>>> Berthold
>>> --
>>> _______________________________________________
>>> yocto mailing list
>>> yocto@yoctoproject.org
>>> https://lists.yoctoproject.org/listinfo/yocto
>>>
>>>
-- 
Rudolf J Streif
CEO/CTO
ibeeto
1.855.442.3386 x700


[-- Attachment #1.1.2: Type: text/html, Size: 7535 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 499 bytes --]

      reply	other threads:[~2019-11-08 13:06 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-07 19:41 Yocto newbie: Need help with recipe Berthold Höllmann
2019-11-07 21:36 ` Rudolf Streif
2019-11-08 10:34   ` Berthold Höllmann
2019-11-08 13:05     ` Rudolf J Streif [this message]

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=e08fa9f0-502f-8c10-d0f3-2bc7e249d85e@ibeeto.com \
    --to=rudolf.streif@ibeeto.com \
    --cc=berthold-yocto@xn--hllmanns-n4a.de \
    --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.