[OE-core] [PATCH 1/1] qt4: remove the option -feliminate-dwarf2-dups to fix the build

Dexuan Cui dexuan.cui at intel.com
Tue Mar 29 08:52:23 UTC 2011


From: Dexuan Cui <dexuan.cui at intel.com>

[YOCTO #932]

After commit 5ea06dc295b657383fd97545c15255b294cf1a79(bitbake.conf: Prune
global OPTIMIZATION flags) that adds an option -feliminate-dwarf2-dups,
gcc 4.5 reports such an internal compiler error when building Qt4 if the
option is used:

| graphicsview/qgridlayoutengine.cpp:1553:1: internal compiler error: in build_abbrev_table, at dwarf2out.c:9806
| Please submit a full bug report,
| with preprocessed source if appropriate.
| See <http://gcc.gnu.org/bugs.html> for instructions.

This is a gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47361

At present we can remove the option as a workaround.

Thanks Robert Berger for reporting the bug and his investigation in gcc
bugzilla and thanks Khem Raj for the quick suggestion about removing
the option.

Signed-off-by: Dexuan Cui <dexuan.cui at intel.com>
---
 meta/recipes-qt/qt4/qt4-embedded.inc |    2 +-
 meta/recipes-qt/qt4/qt4-x11-free.inc |    2 +-
 meta/recipes-qt/qt4/qt4.inc          |    5 +++++
 3 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-qt/qt4/qt4-embedded.inc b/meta/recipes-qt/qt4/qt4-embedded.inc
index 2ed1819..dc5ea96 100644
--- a/meta/recipes-qt/qt4/qt4-embedded.inc
+++ b/meta/recipes-qt/qt4/qt4-embedded.inc
@@ -4,7 +4,7 @@ LICENSE = "LGPLv2.1 | GPLv3"
 PRIORITY = "optional"
 HOMEPAGE = "http://qt.nokia.com"
 DEPENDS += "directfb tslib"
-INC_PR = "r26"
+INC_PR = "r27"
 
 QT_BASE_NAME ?= "qt4-embedded"
 QT_BASE_LIB  ?= "libqt-embedded"
diff --git a/meta/recipes-qt/qt4/qt4-x11-free.inc b/meta/recipes-qt/qt4/qt4-x11-free.inc
index 057a129..ec73a3b 100644
--- a/meta/recipes-qt/qt4/qt4-x11-free.inc
+++ b/meta/recipes-qt/qt4/qt4-x11-free.inc
@@ -6,7 +6,7 @@ SECTION = "x11/libs"
 PRIORITY = "optional"
 DEPENDS += "virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor"
 
-INC_PR = "r21"
+INC_PR = "r22"
 
 QT_GLFLAGS ?= "-no-opengl"
 QT_GLFLAGS_qemux86 = "-opengl"
diff --git a/meta/recipes-qt/qt4/qt4.inc b/meta/recipes-qt/qt4/qt4.inc
index de8cb69..24b2a82 100644
--- a/meta/recipes-qt/qt4/qt4.inc
+++ b/meta/recipes-qt/qt4/qt4.inc
@@ -3,6 +3,11 @@ inherit qmake_base
 DEPENDS += "qt4-tools-native freetype jpeg libpng zlib dbus openssl glib-2.0 gstreamer gst-plugins-base sqlite3"
 
 require qt4_arch.inc
+
+# gcc 4.5 is buggy (it reports "internal compiler error") when building Qt4 if
+# -feliminate-dwarf2-dups is used, so we remove the option to workaround it.
+CXXFLAGS := "${@oe_filter_out('-feliminate-dwarf2-dups', '${CXXFLAGS}', d)}"
+
 QT_ARCH := "${@qt_arch(d)}"
 QT_ENDIAN = "${@qt_endian(d)}"
 
-- 
1.7.2





More information about the Openembedded-core mailing list