[OE-core] [PATCH 1/1] qt-mobility: remove /usr/lib from ld rpath-link option

rongqing.li at windriver.com rongqing.li at windriver.com
Mon Jun 24 05:08:03 UTC 2013


From: "Roy.Li" <rongqing.li at windriver.com>

Remove /usr/lib from ld rpath-link option to fix the below build error:

       bitbake_build/tmp/sysroots/x86-kvm-guest/usr/lib/libpng16.so.16:
        undefined reference to `inflateReset2 at ZLIB_1.2.3.4'

since sysroot seems not work for rpath-link, and "rpath-link,/usr/lib" makes
ld to search host libraries for target libraries, once host has different
version zlib, the error will happen.

qmake uses QT_MOBILITY_LIB to generate "rpath-link,/usr/lib" when do_configure
but we can not add sysroot into QT_MOBILITY_LIB, since QT_MOBILITY_LIB is dir
which libraries will be installed to, so I remove this dir from rpath-link
before do_compile

Signed-off-by: Roy.Li <rongqing.li at windriver.com>
---
 meta/recipes-qt/qt4/qt-mobility_1.2.0.inc |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc b/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
index b0e4278..aba84ab 100644
--- a/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
+++ b/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
@@ -59,6 +59,12 @@ do_configure_prepend() {
 	echo CONFIG += ${qtm_embedded} >>./config.pri
 }
 
+do_compile_prepend() {
+	for NAME in `find ./ -name Makefile` ; do
+	    sed -e 's:-Wl,-rpath-link,${libdir}::g' -i $NAME 
+	done
+}
+
 do_install() {
 	for NAME in */*.prf
 	do
-- 
1.7.10.4




More information about the Openembedded-core mailing list