Re: [yocto] Yocto newbie: Need help with recipe

2019-11-08 Thread Rudolf J Streif
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  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 =
>>> 

Re: [yocto] Yocto newbie: Need help with recipe

2019-11-08 Thread Berthold Höllmann
Rudolf Streif  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"
>> 

Re: [yocto] Yocto newbie: Need help with recipe

2019-11-07 Thread Rudolf Streif
Hi Berthold,

Welcome to the Yocto Project.

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



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, Streif Enterprises Inc.
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


[yocto] Yocto newbie: Need help with recipe

2019-11-07 Thread Berthold Höllmann

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


signature.asc
Description: PGP signature
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto