From cff67292a2ce9a7866bf14653b5a81d501bfb64b Mon Sep 17 00:00:00 2001 From: Nitin A Kamble Date: Tue, 18 Jan 2011 17:21:41 -0800 Subject: libzypp: fix build issue with gcc dso linking change 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 libpthread library explicitely for linking to work without errors. Signed-off-by: Nitin A Kamble --- .../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 (limited to 'meta/recipes-extended/libzypp') 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 0000000000..496a3cabf6 --- /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 +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 6918263296..7036c6471b 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" -- cgit v1.2.3-54-g00ecf