[poky] [PATCH 1/1] libzypp: fix build issue with gcc dso linking change
Nitin A Kamble
nitin.a.kamble at intel.com
Tue Jan 18 17:26:42 PST 2011
All the libraries needs to be specified explicitely with the new gcc dso
linking change patch. This was causing build errors for this
recipe. Specifying the libX11 libgdk-x11-2.0 and libgdk_pixbuf-2.0 libraries
explicitely for linking to work without errors.
Signed-off-by: Nitin A Kamble <nitin.a.kamble at intel.com>
---
.../libzypp/dso_linking_change_build_fix.patch | 50 ++++++++++++++++++++
meta/recipes-extended/libzypp/libzypp_git.bb | 5 +-
2 files changed, 53 insertions(+), 2 deletions(-)
create mode 100644 meta/recipes-extended/libzypp/libzypp/dso_linking_change_build_fix.patch
diff --git a/meta/recipes-extended/libzypp/libzypp/dso_linking_change_build_fix.patch b/meta/recipes-extended/libzypp/libzypp/dso_linking_change_build_fix.patch
new file mode 100644
index 0000000..496a3ca
--- /dev/null
+++ b/meta/recipes-extended/libzypp/libzypp/dso_linking_change_build_fix.patch
@@ -0,0 +1,50 @@
+after gcc linking has changed, all the libraries must be explicitely specified
+This patch avoids these linking errors:
+
+
+Linking CXX executable DumpSelectable
+cd /build_disk/poky_build/build0/tmp/work/i586-poky-linux/libzypp-0.0-git0+4494797d5b0369365b1af63921de45b197ead64f-r4/git/tools && /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/DumpSelectable.dir/link.txt --verbose=1
+/build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/i586-poky-linux-g++ -march=i586 --sysroot=/build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux -fpermissive -fno-strict-aliasing -fPIC -g -Wall -Werror=format-security -Woverloaded-virtual -Wnon-virtual-dtor -Wl,-as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed CMakeFiles/DumpSelectable.dir/DumpSelectable.cc.o -o DumpSelectable -rdynamic ../zypp/libzypp.so.800.1.1 -lboost_program_options-mt -lutil -lrpm -lcurl -lxml2 -lz -Wl,-Bstatic -lsatsolver -lsatsolverext -Wl,-Bdynamic -lexpat -lssl -lcrypto -lboost_signals-mt -ludev -Wl,-rpath,/build_disk/poky_build/build0/tmp/work/i586-poky-linux/libzypp-0.0-git0+4494797d5b0369365b1af63921de45b197ead64f-r4/git/zypp
+/build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.5.1/ld: Ã: invalid DSO for symbol `pthread_cancel@@GLIBC_2.0' definition
+/build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux/lib/libpthread.so.0: could not read symbols: Bad value
+collect2: ld returned 1 exit status
+make[2]: *** [tools/DumpSelectable] Error 1
+
+
+
+| Linking CXX executable COW_debug
+| cd /build_disk/poky_build/build0/tmp/work/i586-poky-linux/libzypp-0.0-git0+4494797d5b0369365b1af63921de45b197ead64f-r5/git/examples && /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/COW_debug.dir/link.txt --verbose=1
+| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/i586-poky-linux-g++ -march=i586 --sysroot=/build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux -fpermissive -fno-strict-aliasing -fPIC -g -Wall -Werror=format-security -Woverloaded-virtual -Wnon-virtual-dtor -Wl,-as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed CMakeFiles/COW_debug.dir/COW_debug.cc.o -o COW_debug -rdynamic ../zypp/libzypp.so.800.1.1 -lutil -lrpm -lcurl -lxml2 -lz -Wl,-Bstatic -lsatsolver -lsatsolverext -Wl,-Bdynamic -lexpat -lssl -lcrypto -lboost_signals-mt -ludev -Wl,-rpath,/build_disk/poky_build/build0/tmp/work/i586-poky-linux/libzypp-0.0-git0+4494797d5b0369365b1af63921de45b197ead64f-r5/git/zypp
+| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.5.1/ld: �: invalid DSO for symbol `pthread_cancel@@GLIBC_2.0' definition
+| /build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux/lib/libpthread.so.0: could not read symbols: Bad value
+| collect2: ld returned 1 exit status
+| make[2]: *** [examples/COW_debug] Error 1
+
+
+Nitin A Kamble <nitin.a.kamble at intel.com>
+Date: 2011/01/18
+
+Index: git/tools/CMakeLists.txt
+===================================================================
+--- git.orig/tools/CMakeLists.txt 2010-12-19 23:59:02.000000000 -0800
++++ git/tools/CMakeLists.txt 2011-01-18 17:07:52.132140223 -0800
+@@ -13,6 +13,7 @@
+ )
+ TARGET_LINK_LIBRARIES( ${loop_var}
+ zypp
++ pthread
+ boost_program_options-mt
+ )
+ ENDFOREACH( loop_var )
+Index: git/examples/CMakeLists.txt
+===================================================================
+--- git.orig/examples/CMakeLists.txt 2010-12-19 23:59:01.000000000 -0800
++++ git/examples/CMakeLists.txt 2011-01-18 17:17:41.760411373 -0800
+@@ -8,6 +8,7 @@
+ )
+ TARGET_LINK_LIBRARIES( ${loop_var}
+ zypp
++ pthread
+ )
+ ENDFOREACH( loop_var )
+
diff --git a/meta/recipes-extended/libzypp/libzypp_git.bb b/meta/recipes-extended/libzypp/libzypp_git.bb
index 6918263..7036c64 100644
--- a/meta/recipes-extended/libzypp/libzypp_git.bb
+++ b/meta/recipes-extended/libzypp/libzypp_git.bb
@@ -13,11 +13,12 @@ RDEPENDS_${PN} = "sat-solver"
S = "${WORKDIR}/git"
PV = "0.0-git${SRCPV}"
-PR = "r4"
+PR = "r5"
SRC_URI = "git://gitorious.org/opensuse/libzypp.git;protocol=git \
file://no-doc.patch \
- file://rpm5.patch"
+ file://rpm5.patch \
+ file://dso_linking_change_build_fix.patch"
SRC_URI_append_mips = " file://mips-workaround-gcc-tribool-error.patch"
--
1.7.3.4
More information about the poky
mailing list