Hi,
there are several underlinkage problems within bacula libraries. These
problems are not functional problems, having underlinked libraries is
just not clean. I tried to fix some issues in two attached trivial
patches (made over Release-5.2.2 commit):
Link libbaccfg and libbacpy against libbac
Link libbaccats-mysql, libbaccats-postgresql, libbaccats-sqlite3
against libbac and libbacsql
There are some problems remaining:
libbacsql-5.2.2.so: undefined symbol: db_init_database (exists in
libbaccats-mysql, libbaccats-postgresql, libbaccats-sqlite3)
libbaccfg-5.2.2.so: undefined symbols: r_first, resources, r_last,
res_head, res_all, dump_resource, save_resource, free_resource (exist in
console, dird, filed and stored binaries)
It's also not very neat, but fixing them is not so trivial. Are there
any architectural decisions that are not implemented right now? Maybe I
could try working on it.
From 41bec73258318f0c215087498b00fcdcdcf62d93 Mon Sep 17 00:00:00 2001
From: Vitaly Kuznetsov <vi...@altlinux.ru>
Date: Tue, 29 Nov 2011 13:19:29 +0000
Subject: [PATCH 1/2] Link libbaccats-mysql, libbaccats-postgresql,
libbaccats-sqlite3 against libbac and libbacsql
---
bacula/src/cats/Makefile.in | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/bacula/src/cats/Makefile.in b/bacula/src/cats/Makefile.in
index 4c871ed..1514130 100644
--- a/bacula/src/cats/Makefile.in
+++ b/bacula/src/cats/Makefile.in
@@ -150,15 +150,15 @@ libbaccats.la: Makefile cats_dummy.lo
libbaccats-mysql.la: Makefile $(MYSQL_LOBJS)
@echo "Making $@ ..."
- $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(MYSQL_LOBJS)
-export-dynamic -rpath $(libdir) -release $(LIBBACCATS_LT_RELEASE) $(MYSQL_LIBS)
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(MYSQL_LOBJS)
-export-dynamic -rpath $(libdir) -release $(LIBBACCATS_LT_RELEASE)
$(MYSQL_LIBS) -L../lib/.libs/ -lbac -lbacsql
libbaccats-postgresql.la: Makefile $(POSTGRESQL_LOBJS)
@echo "Making $@ ..."
- $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(POSTGRESQL_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACCATS_LT_RELEASE) $(POSTGRESQL_LIBS)
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(POSTGRESQL_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACCATS_LT_RELEASE) $(POSTGRESQL_LIBS) -L../lib/.libs/ -lbac -lbacsql
libbaccats-sqlite3.la: Makefile $(SQLITE_LOBJS)
@echo "Making $@ ..."
- $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(SQLITE_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACCATS_LT_RELEASE) $(SQLITE_LIBS)
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(SQLITE_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACCATS_LT_RELEASE) $(SQLITE_LIBS) -L../lib/.libs/ -lbac -lbacsql
#libbaccats-ingres.la: Makefile $(INGRES_LOBJS)
# @echo "Making $@ ..."
--
1.7.3.2
From ce0943a1ea62ee5dddb9862d6c26dd9b1c09309b Mon Sep 17 00:00:00 2001
From: Vitaly Kuznetsov <vi...@altlinux.ru>
Date: Tue, 29 Nov 2011 13:20:50 +0000
Subject: [PATCH 2/2] Link libbaccfg and libbacpy against libbac
---
bacula/src/lib/Makefile.in | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/bacula/src/lib/Makefile.in b/bacula/src/lib/Makefile.in
index 519d3a3..6e50322 100644
--- a/bacula/src/lib/Makefile.in
+++ b/bacula/src/lib/Makefile.in
@@ -129,7 +129,7 @@ libbaccfg.a: $(LIBBACCFG_OBJS)
libbaccfg.la: Makefile $(LIBBACCFG_LOBJS) libbac.la
@echo "Making $@ ..."
- $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(LIBBACCFG_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACCFG_LT_RELEASE) $(OPENSSL_LIBS) $(LIBS)
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(LIBBACCFG_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACCFG_LT_RELEASE) $(OPENSSL_LIBS) $(LIBS) libbac.la
libbacpy.a: $(LIBBACPY_OBJS)
@echo "Making $@ ..."
@@ -138,7 +138,7 @@ libbacpy.a: $(LIBBACPY_OBJS)
libbacpy.la: Makefile $(LIBBACPY_LOBJS) libbac.la
@echo "Making $@ ..."
- $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(LIBBACPY_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACPY_LT_RELEASE) $(PYTHON_LIBS) $(OPENSSL_LIBS) $(LIBS)
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@
$(LIBBACPY_LOBJS) -export-dynamic -rpath $(libdir) -release
$(LIBBACPY_LT_RELEASE) $(PYTHON_LIBS) $(OPENSSL_LIBS) $(LIBS) libbac.la
Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
cd $(topdir) \
--
1.7.3.2
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure
contains a definitive record of customers, application performance,
security threats, fraudulent activity, and more. Splunk takes this
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Bacula-devel mailing list
Bacula-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-devel