[oe] [meta-qt5] Qt5 SDK problem when building for Wandboard
Jonathan Liu
net147 at gmail.com
Sun May 4 01:47:06 UTC 2014
On 3/05/2014 1:48 AM, Jacob Kroon wrote:
> On Fri, May 2, 2014 at 5:06 PM, Jacob Kroon <jacob.kroon at gmail.com
> <mailto:jacob.kroon at gmail.com>> wrote:
>
> On Fri, May 2, 2014 at 10:25 AM, Jonathan Liu <net147 at gmail.com
> <mailto:net147 at gmail.com>> wrote:
>
> On 2/05/2014 6:17 PM, Jacob Kroon wrote:
>> On Fri, May 2, 2014 at 8:34 AM, Jonathan Liu
>> <net147 at gmail.com <mailto:net147 at gmail.com>> wrote:
>>
>> On 2/05/2014 4:28 PM, Jacob Kroon wrote:
>>> Hi Jonathan,
>>>
>>> On Fri, May 2, 2014 at 3:01 AM, Jonathan Liu
>>> <net147 at gmail.com <mailto:net147 at gmail.com>> wrote:
>>>
>>> On 1/05/2014 6:29 PM, Jacob Kroon wrote:
>>>
>>> Hi,
>>>
>>> For a while I've been working around a problem
>>> with using
>>> populate_sdk_qt5.bbclass in my image recipe,
>>> I've had to use a
>>> packagegroup-qt5-toolchain-target.bbappend to
>>> remove the following
>>> dependant packages:
>>>
>>> qt3d-dev
>>> qt3d-mkspecs
>>> qt3d-qmlplugins
>>> qtlocation-dev
>>> qtlocation-mkspecs
>>> qtlocation-plugins
>>> qtlocation-qmlplugins
>>>
>>> I'm building for wandboard-* machines, and if I
>>> try to bitbake qt3d or
>>> qtlocation, I get the following error:
>>>
>>> Project ERROR: Unknown module(s) in QT: opengl
>>>
>>> In my distro.conf I'm using:
>>>
>>> DISTRO_FEATURES_append = " opengl ptest systemd"
>>> DISTRO_FEATURES_remove = "pulseaudio sysvinit x11"
>>>
>>> Could anyone hint at what a proper solution
>>> would be ?
>>>
>>> I'm using master branches.
>>>
>>> Build Configuration:
>>> BB_VERSION = "1.23.0"
>>> BUILD_SYS = "x86_64-linux"
>>> NATIVELSBSTRING = "Fedora-20"
>>> TARGET_SYS = "arm-oe-linux-gnueabi"
>>> MACHINE = "wandboard-dual"
>>> DISTRO = "monkey"
>>> DISTRO_VERSION = "0.1"
>>> TUNE_FEATURES = "arm armv7a vfp neon
>>> callconvention-hard cortexa9"
>>> TARGET_FPU = "vfp-neon"
>>> meta-qt5 =
>>> "master:485c277940d26e0c96953d8a649a9c84eed0afb8"
>>> meta =
>>> "master:4c2ffce2ae32447a1e39877b9bcbc2cc11ddd2fa"
>>> meta-fsl-arm =
>>> "master:27b0ffc33d75f0c37a876849a0db9c0277d5f036"
>>> meta-fsl-arm-extra =
>>> "master:a7515d4b20e43cfdd8654249fc16ac6b8c5ec3bc"
>>>
>>> -- Jacob
>>>
>>> Try adding the following to your distro.conf if you
>>> are using OpenGL ES 2.0:
>>> PACKAGECONFIG_GL_pn-qtbase = "gles2"
>>>
>>>
>>> I think this is already done by a qtbase_%.bbappend in
>>> the meta-fsl-arm layer. I do have:
>>>
>>> [OE jkroon at localhost build]$ bitbake -e qtbase | grep -e
>>> "^PACKAGECONFIG="
>>> PACKAGECONFIG=" release udev evdev tools libs openssl
>>> gles2 jpeg libpng zlib accessibility tslib icu"
>>>
>>> Could it be that Qt3D and QtLocation requires full
>>> OpenGL support, and that gles2 is not enough ?
>>>
>>> -- Jacob
>> I have built all Qt modules fine with gles2. However,
>> your PACKAGECONFIG doesn't have "widgets".
>> I think the QtOpenGL module depends on widgets.
>>
>> Indeed, adding "widgets" solves the issue, many thanks.
>> Can we describe this dependency in the recipes somehow ?
>>
>> -- Jacob
> "widgets" is added to PACKAGECONFIG by default in meta-qt5.
> You could submit a patch to add a comment for
> PACKAGECONFIG[widgets] in qtbase.inc.
>
>
> Something like this ?
>
> +# needed for qt3d and qtlocation (otherwise do_configure fails to
> find 'opengl' module, which in turn requires 'widgets')
> PACKAGECONFIG[widgets] = "-widgets,-no-widgets"
>
Looks okay, though I haven't verified this myself.
>
>
> Would it not be possible to write the recipe so that it depends on
> just the mkspec/dev packages that are actually used in the target image ?
>
I can't think of a good way to do that at the moment though there has
been some minimal discussion about improving the SDK generation:
http://article.gmane.org/gmane.comp.handhelds.openembedded.core/48084
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5429
Regards,
Jonathan
More information about the Openembedded-devel
mailing list