[oe] [PATCH 1/1] mariadb-native: fix link error on Ubuntu 13.10

wenzong.fan at windriver.com wenzong.fan at windriver.com
Thu Dec 5 07:10:38 UTC 2013


From: Wenzong Fan <wenzong.fan at windriver.com>

Below errors only occurs on Ubuntu 13.10:

$arch-linux-libtool: link: g++ ... -o .libs/mysqltest_embedded \
    ../../libmysqld/.libs/libmysqld.so -ldl

    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlopen'
    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlclose'
    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlerror'
    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlsym'

GCC/ld verion on the host:
    gcc (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1
    GNU ld (GNU Binutils for Ubuntu) 2.23.52.20130913

This is a strange behavior on Ub13.10, it fails even '-ldl' in the
link command line. This patch will append '-ldl' to dependency_libs
in libmysqld.la.

Signed-off-by: Wenzong Fan <wenzong.fan at windriver.com>
---
 .../recipes-support/mysql/mariadb-native_5.1.67.bb |    3 ++
 .../mysql/mariadb/fix-link-error-ub1310.patch      |   37 ++++++++++++++++++++
 2 files changed, 40 insertions(+)
 create mode 100644 meta-oe/recipes-support/mysql/mariadb/fix-link-error-ub1310.patch

diff --git a/meta-oe/recipes-support/mysql/mariadb-native_5.1.67.bb b/meta-oe/recipes-support/mysql/mariadb-native_5.1.67.bb
index a55c2ab..dccbfd0 100644
--- a/meta-oe/recipes-support/mysql/mariadb-native_5.1.67.bb
+++ b/meta-oe/recipes-support/mysql/mariadb-native_5.1.67.bb
@@ -8,6 +8,9 @@ PACKAGES = ""
 EXTRA_OEMAKE = ""
 EXTRA_OECONF = " --with-embedded-server "
 
+SRC_URI += "file://fix-link-error-ub1310.patch \
+	"
+
 do_install() {
     oe_runmake 'DESTDIR=${D}' install
     mv -f ${D}${libdir}/mysql/* ${D}${libdir}
diff --git a/meta-oe/recipes-support/mysql/mariadb/fix-link-error-ub1310.patch b/meta-oe/recipes-support/mysql/mariadb/fix-link-error-ub1310.patch
new file mode 100644
index 0000000..a528ea7
--- /dev/null
+++ b/meta-oe/recipes-support/mysql/mariadb/fix-link-error-ub1310.patch
@@ -0,0 +1,37 @@
+mariadb-native: fix link error on Ubuntu 13.10
+
+Below errors only occurs on Ubuntu 13.10:
+
+$arch-linux-libtool: link: g++ ... -o .libs/mysqltest_embedded \
+    ../../libmysqld/.libs/libmysqld.so -ldl
+
+    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlopen'
+    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlclose'
+    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlerror'
+    ../../libmysqld/.libs/libmysqld.so: undefined reference to `dlsym'
+
+GCC/ld verion on the host:
+    gcc (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1
+    GNU ld (GNU Binutils for Ubuntu) 2.23.52.20130913
+
+This is a strange behavior on Ub13.10, it fails even '-ldl' in the
+link command line. Below fix will append '-ldl' to dependency_libs
+in libmysqld.la.
+
+Upstream-Status: Submitted [https://mariadb.atlassian.net/browse/MDEV-5362]
+
+Signed-off-by: Wenzong Fan <wenzong.fan at windriver.com>
+================================================
+diff --git a/libmysqld/Makefile.am b/libmysqld/Makefile.am
+index 7a2c92e..eee501e 100644
+--- a/libmysqld/Makefile.am
++++ b/libmysqld/Makefile.am
+@@ -92,7 +92,7 @@ INC_LIB=	$(top_builddir)/regex/libregex.la \
+                 @ndbcluster_libs@ @NDB_SCI_LIBS@ \
+ 		@mysql_embedded_plugin_libs@ \
+ 		$(libevent_inc_libs) \
+-		$(yassl_inc_libs)
++		$(yassl_inc_libs) @LIBDL@
+ 
+ if HAVE_YASSL
+ yassl_inc_libs=	$(top_builddir)/extra/yassl/src/libyassl.la \
-- 
1.7.10.4




More information about the Openembedded-devel mailing list