On Wed, Feb 10, 2010 at 09:48:38AM +0100, Marco van Wieringen wrote:
> On Wed, Feb 10, 2010 at 08:28:25AM +0100, Kern Sibbald wrote:
> > Hello Marco,
> > 
> > I think you have completely misunderstood the point of my email and the 
> > problem I posed.  
> I'm not sure I really understand the problem you are posing. I'm wondering
> if it is really a problem (I know it is for you but I didn't have time to
> have an indepth search into what and why)
> 
> > 
> > I have no problem with changing the library version from 1 to 5, in fact, 
> > it 
> > was I who suggested that you do it based on the Bacula version.  This was 
> > and 
> > is in my opinion the right thing to do.
> Sure it is but it has some impact.
> 
> > 
> > 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.
> 
> > 
> > I was trying to explain that according to the new numbering scheme, 
> > everything 
> > was correctly compiled and installed -- however, it left the old 1.0.0 
> > version of the shared objects installed.  I expected that would only use a 
> > bit of disk space, but in fact, having the old shared objects installed in 
> > the same directory as the new shared objects prevented Bacula from running 
> > -- 
> > or at least printed out the error messages I pasted below.
> I must say that I don't understand this, as you ldd clearly shows it was 
> linked
> against the 5.0.0 libs. I will copy my old 1.0.0 libs also in and see if I
> reproduce the behaviour.

To answer my own question:

I now have this:

9:58 [root:corona][62] /opt/ELMbacula/lib > ls -l                               
                                                                                
                                                                 
total 4246
drwxr-xr-x   2 bin      bin           32 Feb 10 09:54 amd64
-r-xr-xr-x   1 bin      bin          908 Feb 10 09:54 libbac.la
lrwxrwxrwx   1 root     root          11 Feb 10 09:54 libbac.so -> libbac.so.5
lrwxrwxrwx   1 bin      bin           15 Feb 10 09:53 libbac.so.1 -> 
libbac.so.1.0.0
-r-xr-xr-x   1 bin      bin       647888 Oct 27 21:27 libbac.so.1.0.0
lrwxrwxrwx   1 root     root          15 Feb  7 15:54 libbac.so.5 -> 
libbac.so.5.0.0
-r-xr-xr-x   1 bin      bin       649808 Feb  7 14:19 libbac.so.5.0.0
-r-xr-xr-x   1 bin      bin          926 Feb 10 09:54 libbaccfg.la
lrwxrwxrwx   1 root     root          14 Feb 10 09:54 libbaccfg.so -> 
libbaccfg.so.5
lrwxrwxrwx   1 bin      bin           18 Feb 10 09:53 libbaccfg.so.1 -> 
libbaccfg.so.1.0.0
-r-xr-xr-x   1 bin      bin        44384 Oct 27 21:27 libbaccfg.so.1.0.0
lrwxrwxrwx   1 root     root          18 Feb  7 15:54 libbaccfg.so.5 -> 
libbaccfg.so.5.0.0
-r-xr-xr-x   1 bin      bin        42048 Feb  7 14:19 libbaccfg.so.5.0.0
-r-xr-xr-x   1 bin      bin          932 Feb 10 09:54 libbacfind.la
lrwxrwxrwx   1 root     root          15 Feb 10 09:54 libbacfind.so -> 
libbacfind.so.5
lrwxrwxrwx   1 bin      bin           19 Feb 10 09:53 libbacfind.so.1 -> 
libbacfind.so.1.0.0
-r-xr-xr-x   1 bin      bin        90964 Oct 27 21:27 libbacfind.so.1.0.0
lrwxrwxrwx   1 root     root          19 Feb  7 15:54 libbacfind.so.5 -> 
libbacfind.so.5.0.0
-r-xr-xr-x   1 bin      bin        86344 Feb  7 14:19 libbacfind.so.5.0.0
-r-xr-xr-x   1 bin      bin          956 Feb 10 09:54 libbacpy.la
lrwxrwxrwx   1 root     root          13 Feb 10 09:54 libbacpy.so -> 
libbacpy.so.5
lrwxrwxrwx   1 bin      bin           17 Feb 10 09:53 libbacpy.so.1 -> 
libbacpy.so.1.0.0
-r-xr-xr-x   1 bin      bin        21348 Oct 27 21:27 libbacpy.so.1.0.0
lrwxrwxrwx   1 root     root          17 Feb  7 15:54 libbacpy.so.5 -> 
libbacpy.so.5.0.0
-r-xr-xr-x   1 bin      bin        20724 Feb  7 14:19 libbacpy.so.5.0.0
-r-xr-xr-x   1 bin      bin          955 Feb 10 09:54 libbacsql.la
lrwxrwxrwx   1 root     root          14 Feb 10 09:54 libbacsql.so -> 
libbacsql.so.5
lrwxrwxrwx   1 bin      bin           18 Feb 10 09:53 libbacsql.so.1 -> 
libbacsql.so.1.0.0
-r-xr-xr-x   1 bin      bin       214936 Oct 27 21:27 libbacsql.so.1.0.0
lrwxrwxrwx   1 root     root          18 Feb  7 15:54 libbacsql.so.5 -> 
libbacsql.so.5.0.0
-r-xr-xr-x   1 bin      bin       227152 Feb  7 14:19 libbacsql.so.5.0.0
drwxr-xr-x   3 bin      bin            4 Feb  7 15:54 plugins
9:58 [root:corona][63] /opt/ELMbacula/lib > cd amd64 
9:58 [root:corona][64] /opt/ELMbacula/lib/amd64 > ls -l                         
                                                                                
                                                                 
total 4858
-r-xr-xr-x   1 bin      bin          966 Feb 10 09:54 libbac.la
lrwxrwxrwx   1 root     root          11 Feb 10 09:54 libbac.so -> libbac.so.5
lrwxrwxrwx   1 bin      bin           15 Feb 10 09:53 libbac.so.1 -> 
libbac.so.1.0.0
-r-xr-xr-x   1 bin      bin       722104 Oct 27 21:27 libbac.so.1.0.0
lrwxrwxrwx   1 root     root          15 Feb  7 15:54 libbac.so.5 -> 
libbac.so.5.0.0
-r-xr-xr-x   1 bin      bin       720080 Feb  7 14:01 libbac.so.5.0.0
-r-xr-xr-x   1 bin      bin          984 Feb 10 09:54 libbaccfg.la
lrwxrwxrwx   1 root     root          14 Feb 10 09:54 libbaccfg.so -> 
libbaccfg.so.5
lrwxrwxrwx   1 bin      bin           18 Feb 10 09:53 libbaccfg.so.1 -> 
libbaccfg.so.1.0.0
-r-xr-xr-x   1 bin      bin        54136 Oct 27 21:27 libbaccfg.so.1.0.0
lrwxrwxrwx   1 root     root          18 Feb  7 15:54 libbaccfg.so.5 -> 
libbaccfg.so.5.0.0
-r-xr-xr-x   1 bin      bin        51152 Feb  7 14:01 libbaccfg.so.5.0.0
-r-xr-xr-x   1 bin      bin          990 Feb 10 09:54 libbacfind.la
lrwxrwxrwx   1 root     root          15 Feb 10 09:54 libbacfind.so -> 
libbacfind.so.5
lrwxrwxrwx   1 bin      bin           19 Feb 10 09:53 libbacfind.so.1 -> 
libbacfind.so.1.0.0
-r-xr-xr-x   1 bin      bin       104696 Oct 27 21:27 libbacfind.so.1.0.0
lrwxrwxrwx   1 root     root          19 Feb  7 15:54 libbacfind.so.5 -> 
libbacfind.so.5.0.0
-r-xr-xr-x   1 bin      bin        97928 Feb  7 14:01 libbacfind.so.5.0.0
-r-xr-xr-x   1 bin      bin         1014 Feb 10 09:54 libbacpy.la
lrwxrwxrwx   1 root     root          13 Feb 10 09:54 libbacpy.so -> 
libbacpy.so.5
lrwxrwxrwx   1 bin      bin           17 Feb 10 09:53 libbacpy.so.1 -> 
libbacpy.so.1.0.0
-r-xr-xr-x   1 bin      bin        26584 Oct 27 21:27 libbacpy.so.1.0.0
lrwxrwxrwx   1 root     root          17 Feb  7 15:54 libbacpy.so.5 -> 
libbacpy.so.5.0.0
-r-xr-xr-x   1 bin      bin        25712 Feb  7 14:01 libbacpy.so.5.0.0
-r-xr-xr-x   1 bin      bin         1013 Feb 10 09:54 libbacsql.la
lrwxrwxrwx   1 root     root          14 Feb 10 09:54 libbacsql.so -> 
libbacsql.so.5
lrwxrwxrwx   1 bin      bin           18 Feb 10 09:53 libbacsql.so.1 -> 
libbacsql.so.1.0.0
-r-xr-xr-x   1 bin      bin       238232 Oct 27 21:27 libbacsql.so.1.0.0
lrwxrwxrwx   1 root     root          18 Feb  7 15:54 libbacsql.so.5 -> 
libbacsql.so.5.0.0
-r-xr-xr-x   1 bin      bin       250920 Feb  7 14:01 libbacsql.so.5.0.0


e.g. I have both the old and the new libs in one place.

and when I then try

/opt/ELMbacula/sbin/bacula-fd: illegal option -- x
Copyright (C) 2000-2010 Free Software Foundation Europe e.V.

Version: 5.0.1 (06 February 2010)

Usage: bacula-fd [-f -s] [-c config_file] [-d debug_level]
        -c <file>   use <file> as configuration file
        -d <nn>     set debug level to <nn>
        -dt         print a timestamp in debug output
        -f          run in foreground (for debugging)
        -g          groupid
        -k          keep readall capabilities
        -m          print kaboom output (for debugging)
        -s          no signals (for debugging)
        -t          test configuration file and exit
        -u          userid
        -v          verbose user messages
        -?          print this message.

9:59 [root:corona][66] /opt/ELMbacula/lib/amd64 > /opt/ELMbacula/sbin/bacula-sd 
-x                                                                              
                                                                 
/opt/ELMbacula/sbin/bacula-sd: illegal option -- x
Copyright (C) 2000-2010 Free Software Foundation Europe e.V.

Version: 5.0.1 (06 February 2010)

Usage: stored [options] [-c config_file] [config_file]
        -c <file>   use <file> as configuration file
        -d <nn>     set debug level to <nn>
        -dt         print timestamp in debug output
        -f          run in foreground (for debugging)
        -g <group>  set groupid to group
        -m          print kaboom output (for debugging)
        -p          proceed despite I/O errors
        -s          no signals (for debugging)
        -t          test - read config and exit
        -u <user>   userid to <user>
        -v          verbose user messages
        -?          print this message.

9:59 [root:corona][67] /opt/ELMbacula/lib/amd64 > 
/opt/ELMbacula/sbin/bacula-dir -x                                               
                                                                                
               
/opt/ELMbacula/sbin/bacula-dir: illegal option -- x
Copyright (C) 2000-2010 Free Software Foundation Europe e.V.

Version: 5.0.1 (06 February 2010)

Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]
       -c <file>   set configuration file to file
       -d <nn>     set debug level to <nn>
       -dt         print timestamp in debug output
       -f          run in foreground (for debugging)
       -g          groupid
       -m          print kaboom output (for debugging)
       -r <job>    run <job> now
       -s          no signals
       -t          test - read configuration and exit
       -u          userid
       -v          verbose user messages
       -?          print this message.

It just seems to work (Ok I know this is on Solaris but dynamic loading should 
work the same on Linux)
So the only thing I can think of is that there were old 5.0.0 libs with older 
symbols which lead
to the error you are seeing. I would like to see what happens on Linux when you 
do exactly the same
e.g. put the 1.0.0 libs back.

Marco


------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Bacula-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-devel

Reply via email to