People are seeing these errrors from ldconfig
libstdc++.so.6.0.14-gdb.py is not an ELF file - it has the wrong magic
bytes at the start.

this file is moved into gdb's autoload directory
if it exists there then gdb will find it when debugging
and it wont be in the paths where ldconfig looks for
libraries.

Signed-off-by: Khem Raj <[email protected]>
---
 recipes/gcc/gcc-4.5.inc            |    2 +-
 recipes/gcc/gcc-package-cross.inc  |    8 +++++++-
 recipes/gcc/gcc-package-target.inc |    4 ++++
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/recipes/gcc/gcc-4.5.inc b/recipes/gcc/gcc-4.5.inc
index aa5bb00..69229ef 100644
--- a/recipes/gcc/gcc-4.5.inc
+++ b/recipes/gcc/gcc-4.5.inc
@@ -8,7 +8,7 @@ DEPENDS = "mpfr gmp libmpc libelf"
 NATIVEDEPS = "mpfr-native gmp-native libmpc-native"
 
 
-INC_PR = "r36"
+INC_PR = "r37"
 
 SRCREV = "170880"
 PV = "4.5"
diff --git a/recipes/gcc/gcc-package-cross.inc 
b/recipes/gcc/gcc-package-cross.inc
index f9a7eeb..1533069 100644
--- a/recipes/gcc/gcc-package-cross.inc
+++ b/recipes/gcc/gcc-package-cross.inc
@@ -4,7 +4,7 @@ PACKAGE_STRIP = "no"
 
 SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
 
-PACKAGES = "libgcc libssp libstdc++ libg2c libgfortran"
+PACKAGES = "libgcc libssp libstdc++ libg2c libgfortran libstdc++-dev 
libgcc-dev"
 
 # Called from within gcc-cross, so libdir is set wrong
 FILES_libg2c = "${target_libdir}/libg2c.so.*"
@@ -18,6 +18,7 @@ FILES_libgcc-dev = "${target_libdir}/libgcc_s.so"
 
 FILES_libstdc++ = "${target_libdir}/libstdc++.so.*"
 
+FILES_libstdc++-dev = 
"${target_datadir}/gdb/auto-load/${libdir}/libstdc++.so.*-gdb.py*"
 do_install () {
        oe_runmake 'DESTDIR=${D}' install
        install -d ${D}${target_base_libdir}
@@ -68,5 +69,10 @@ GROUP ( libgcc_s.so.1 libgcc.a )" > 
${D}${target_libdir}/libgcc_s.so
        # We use libiberty from binutils or binutils-cross
        rm -f ${D}${libdir}/libiberty.a
        rm -f ${D}${target_libdir}/libiberty.a
+       if [ -f ${D}${target_libdir}/libstdc++.so.*-gdb.py ]; then
+               # move the gdb python helpers to gdb auto-load directory
+               install -d ${D}${target_datadir}/gdb/auto-load${target_libdir}
+               mv -f ${D}${target_libdir}/libstdc++.so.*-gdb.py* 
${D}${target_datadir}/gdb/auto-load${target_libdir}
+       fi
 }
 
diff --git a/recipes/gcc/gcc-package-target.inc 
b/recipes/gcc/gcc-package-target.inc
index 5cfe47b..959b9ec 100644
--- a/recipes/gcc/gcc-package-target.inc
+++ b/recipes/gcc/gcc-package-target.inc
@@ -83,6 +83,7 @@ FILES_libstdc++-dev = "\
   ${libdir}/libsupc++.la \
   ${libdir}/libsupc++.a \
 "
+FILES_libstdc++-dev += 
"${datadir}/gdb/auto-load/${libdir}/libstdc++.so.*-gdb.py*"
 
 FILES_libgfortran-dev = "${libdir}/libgfortran.a \
                          ${libdir}/libgfortran.so \
@@ -168,4 +169,7 @@ GROUP ( libgcc_s.so.1 libgcc.a )" > 
${D}${libdir}/libgcc_s.so
 
        # Remove precompiled c++ headers as they are really big
        rm -rf ${D}${includedir}/c++/${BINV}/${TARGET_SYS}/bits/*.gch
+       # move the gdb python helpers to gdb auto-load directory
+       install -d ${D}${datadir}/gdb/auto-load/${libdir}
+       mv ${D}${libdir}/libstdc++.so.*-gdb.py* 
${D}${datadir}/gdb/auto-load${libdir}
 }
-- 
1.7.0.4


_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to