>>>>> On Wed, 10 Feb 2010 20:22:11 +0100, Kern Sibbald said:
>
> On Wednesday 10 February 2010 19:23:01 Martin Simmons wrote:
> > >>>>> On Wed, 10 Feb 2010 11:03:46 +0100, Marco van Wieringen said:
> > > >
> > > > See comments below ...
> > > >
> > > > On Wednesday 10 February 2010 09:48:38 Marco van Wieringen wrote:
> > > > > On Wed, Feb 10, 2010 at 08:28:25AM +0100, Kern Sibbald wrote:
> > > > > > The problem is that for some reason changing the version (all
> > > > > > components were changed correctly and installed correctly) did not
> > > > > > resolve the problem but in fact created a whole new problem which
> > > > > > is the complete failure of Bacula to be able to run.
> > > > >
> > > > > As I explained in the previous mail changing the major number only
> > > > > fixes one specific problem and that is you can have both Bacula
> > > > > Enterprise Edition and the Community edition on one server. But
> > > > > symbol changes are still a problem.
> > > >
> > > > My primary interest was not being able to run two versions, which I
> > > > think very few people do (except perhaps developers). My main interest
> > > > was to ensure that the libraries that Bacula uses are the correct ones
> > > > (i.e. that we don't have two different libraries that are identically
> > > > named) so that we could avoid build errors when users supply incorrect
> > > > extra libraries due to older previously installed incompatible versions
> > > > as we saw in one case.
> > >
> > > Ok and I have said it before and I say it again its rather tricky todo
> > > that.
> >
> > Why does Bacula have shared libraries?
>
> Because each of the daemons use the libraries (not all use every library) and
> each of the tools use one or more of the libraries.
>
> You can always turn off building shared libraries.
I'm beginning to think that is the best default option :-)
> > If the libraries are only used by the Bacula "family" of programs (maybe
> > including bat), then I suggest always installing them in a Bacula-specific
> > directory. You can then give it a version-specific name if needed.
>
> Unfortunately, we do not have control over where users install their binaries
> or libraries. We supply a configuration option that permits placing the
> shared objects where you want, and the recommendations of the project are to
> install virtually all of Bacula's files (exception for doc, man pages, ...)
> in a single directory /opt/bacula. This is largely ignored.
Yes, it is too difficult to force Bacula's standards onto OS vendor
installations.
> > Kern's installation is like that already, because
> > /opt/bacula/bin/bacula-dir must be one specific version of Bacula at a
> > time.
> >
> > That would also solve a problem on FreeBSD, where the old version libs are
> > installed in /usr/local/lib, which is also on the search path for libs when
> > a new version is built (possibly the "one case" that Kern referred to
> > above).
>
> In the case you mention above, the "user" explicitly set LIBDIR if I
> remember
> right, and that probably caused the problem. If one uses ./configure without
> overriding Bacula generally works fine.
Yes, that's true (but I don't see any uses of LIBDIR in Bacula now).
I think the problem with FreeBSD is that it sets
LDFLAGS="-L${LOCALBASE}/lib"
which puts -L/usr/local/lib before -L../lib -L../findlib in filed/Makefile
etc. That is probably needed to find readline etc, but it also causes ld to
find the old installed libs instead of the newly built ones.
How about reordering the options? I.e. change
$(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -L../lib -L../findlib -o $@ ...
to
$(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) -L../lib -L../findlib $(LDFLAGS) -o $@ ...
etc for all of the makefiles.
Alternatively, add a new variable LDLOPTIONS that is placed after -L../lib
-L../findlib in the makefiles.
__Martin
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Bacula-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-devel