Bug 4775

Summary: qt4-embedded failed to compile with build on autobuilder
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Cristiana Voicu <cristiana.voicu>
Component: coreAssignee: Hongxu Jia <hongxu.jia>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: Medium+ CC: alexandrux.palalau, bluelightning, hongxu.jia, kai.kang, liezhi.yang, mark.hatle, meta.mr.watcher, meta.watcher, ning.zhang, Qi.Chen, sen.zhang, sgw, yi.zhao
Version: unspecified   
Target Milestone: 1.5 M2   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Cristiana Voicu 2013-06-25 08:27:35 UTC
Autobuilder detected on autobuilder:

undefined reference to `QWidget::qwsEvent(QWSEvent*)'
ERROR: Function failed: do_compile (log file is located at /srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/nightly-world/build/build/tmp/work/i586-poky-linux/qt4-embedded/4.8.4-r52.4/temp/log.do_compile.7280)
NOTE: recipe qt4-embedded-4.8.4-r52.4: task do_compile: Failed

More information: 
http://autobuilder.yoctoproject.org:8011/builders/nightly-world/builds/177/steps/Building%20Images/logs/stdio
Comment 1 Hongxu Jia 2013-06-26 12:00:17 UTC
Hi Cristiana,

I could not reproduce the bug on my distro, would
you please append the log.do_configure of qt4-embedded.

Thanks,
Hongxu
Comment 2 Cristiana Voicu 2013-06-26 12:07:19 UTC
Hi Hongxu,

You can find the log file listed in the link: 
http://autobuilder.yoctoproject.org:8011/builders/nightly-world/builds/177/steps/Building%20Images/logs/stdio
The log begins after the line "Log data follows:"

Thanks,
Cristiana



(In reply to comment #1)
> Hi Cristiana,
> 
> I could not reproduce the bug on my distro, would
> you please append the log.do_configure of qt4-embedded.
> 
> Thanks,
> Hongxu
Comment 3 Hongxu Jia 2013-06-26 12:45:23 UTC
(In reply to comment #2)
> Hi Hongxu,
> 
> You can find the log file listed in the link: 
> http://autobuilder.yoctoproject.org:8011/builders/nightly-world/builds/177/
> steps/Building%20Images/logs/stdio
> The log begins after the line "Log data follows:"
> 

Hi Cristiana,

It's about the log of do_compile, not do_configure.
And would you please append your local.conf also, it
seems multilib is enable.

Thanks,
Hongxu


> Thanks,
> Cristiana
> 
> 
> 
> (In reply to comment #1)
> > Hi Cristiana,
> > 
> > I could not reproduce the bug on my distro, would
> > you please append the log.do_configure of qt4-embedded.
> > 
> > Thanks,
> > Hongxu
Comment 4 Cristiana Voicu 2013-06-26 12:58:37 UTC
Hi,

Aa sorry. I don't have access to the other files on autobuilder to obtain the other log file or local.conf.

Saul can you please provide this information?

Thanks,
Cristiana

(In reply to comment #3)
> (In reply to comment #2)
> > Hi Hongxu,
> > 
> > You can find the log file listed in the link: 
> > http://autobuilder.yoctoproject.org:8011/builders/nightly-world/builds/177/
> > steps/Building%20Images/logs/stdio
> > The log begins after the line "Log data follows:"
> > 
> 
> Hi Cristiana,
> 
> It's about the log of do_compile, not do_configure.
> And would you please append your local.conf also, it
> seems multilib is enable.
> 
> Thanks,
> Hongxu
> 
> 
> > Thanks,
> > Cristiana
> > 
> > 
> > 
> > (In reply to comment #1)
> > > Hi Cristiana,
> > > 
> > > I could not reproduce the bug on my distro, would
> > > you please append the log.do_configure of qt4-embedded.
> > > 
> > > Thanks,
> > > Hongxu
Comment 5 Hongxu Jia 2013-06-27 10:11:00 UTC
I could reproduce the bug on my distro:
STEPS:
1, bitbake qt4-x11-free
2, bitbake qt4-embedded
Comment 6 Hongxu Jia 2013-06-29 03:25:21 UTC
One of the related patch has been sent to oe-core by Jonathan:

The class is inheriting qmake2.bbclass which exports OE_QMAKE_QT_CONFIG
pointing to the qt4 qconfig.pri when it should be pointing to the
qt4-embedded qconfig.pri.
Comment 7 Hongxu Jia 2013-06-29 03:54:45 UTC
There is another issue that building qt-mobility-embedded failed from
a clean environment:
...
qgstreamervideooverlay.cpp:51:1: error: 'QGstreamerVideoOverlay' 
does not name a type
qgstreamervideooverlay.cpp:67:1: error: 'QGstreamerVideoOverlay' 
does not name a type
qgstreamervideooverlay.cpp:75:5: error: 'QGstreamerVideoOverlay' 
has not been declared
...

The reason is:
QMake pro files don't explicitly define QT_NO_XVIDEO if the
configuration lacks xvideo, but plugins code (qgstreamervide
ooverlay.cpp) relies on this define.

The solution is:
diff --git a/plugins/multimedia/gstreamer/gstreamer.pro b/plugins/multimedia/gstreamer/gstreamer.pro
--- a/plugins/multimedia/gstreamer/gstreamer.pro
+++ b/plugins/multimedia/gstreamer/gstreamer.pro
@@ -19,6 +19,10 @@ LIBS += \
     -lasound
 }
 
+unix:!contains(QT_CONFIG, xvideo) {
+    DEFINES += QT_NO_XVIDEO
+}
+
 CONFIG += link_pkgconfig
Comment 9 Alexandru Palalau 2013-10-15 08:14:44 UTC
Verified on master branch.
Commit ID: faf8f8660fae26a14578738b642fdeb08bcb9d54