Build doesnt respect the --use-libtool flag
As the title says, building without libtool fails. First because of libtool options which are not recognized by compilers:
Making libbacsd.la ...
/usr/bin/g++ -o libbacsd.la \
acquire.lo ansi_label.lo askdir.lo autochanger.lo block.lo block_util.lo butil.lo dev.lo device.lo ebcdic.lo init_dev.lo label.lo lock.lo match_bsr.lo mount.lo null_dev.lo os.lo parse_bsr.lo read.lo read_records.lo record_read.lo record_util.lo record_write.lo reserve.lo scan.lo sd_plugins.lo spool.lo tape_alert.lo vol_mgr.lo wait.lo tape_worm.lo fifo_dev.lo file_dev.lo tape_dev.lo vtape_dev.lo org_libsd_filemedia.lo org_libsd_quota.lo org_libsd_sir.lo \
-export-dynamic -rpath /usr/local/bacula/lib -release 15.0.2
g++: error: unrecognized command-line option -rpath
g++: error: unrecognized command-line option -release; did you mean -frelease?
make[1]: *** [Makefile:312: libbacsd.la] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/mnt/ram/bacula-15.0.2/src/stored'
After fixing that it fails because of wrong expectations:
Making libbacsd.la ...
/usr/bin/g++ -o libbacsd.la \
acquire.lo ansi_label.lo askdir.lo autochanger.lo block.lo block_util.lo butil.lo dev.lo device.lo ebcdic.lo init_dev.lo label.lo lock.lo match_bsr.lo mount.lo null_dev.lo os.lo parse_bsr.lo read.lo read_records.lo record_read.lo record_util.lo record_write.lo reserve.lo scan.lo sd_plugins.lo spool.lo tape_alert.lo vol_mgr.lo wait.lo tape_worm.lo fifo_dev.lo file_dev.lo tape_dev.lo vtape_dev.lo org_libsd_filemedia.lo org_libsd_quota.lo org_libsd_sir.lo \
-export-dynamic
/usr/bin/ld: cannot find acquire.lo: No such file or directory
/usr/bin/ld: cannot find ansi_label.lo: No such file or directory
/usr/bin/ld: cannot find askdir.lo: No such file or directory
/usr/bin/ld: cannot find autochanger.lo: No such file or directory
/usr/bin/ld: cannot find block.lo: No such file or directory
/usr/bin/ld: cannot find block_util.lo: No such file or directory
/usr/bin/ld: cannot find butil.lo: No such file or directory
/usr/bin/ld: cannot find dev.lo: No such file or directory
/usr/bin/ld: cannot find device.lo: No such file or directory
/usr/bin/ld: cannot find ebcdic.lo: No such file or directory
/usr/bin/ld: cannot find init_dev.lo: No such file or directory
/usr/bin/ld: cannot find label.lo: No such file or directory
/usr/bin/ld: cannot find lock.lo: No such file or directory
/usr/bin/ld: cannot find match_bsr.lo: No such file or directory
/usr/bin/ld: cannot find mount.lo: No such file or directory
/usr/bin/ld: cannot find null_dev.lo: No such file or directory
/usr/bin/ld: cannot find os.lo: No such file or directory
/usr/bin/ld: cannot find parse_bsr.lo: No such file or directory
/usr/bin/ld: cannot find read.lo: No such file or directory
/usr/bin/ld: cannot find read_records.lo: No such file or directory
/usr/bin/ld: cannot find record_read.lo: No such file or directory
/usr/bin/ld: cannot find record_util.lo: No such file or directory
/usr/bin/ld: cannot find record_write.lo: No such file or directory
/usr/bin/ld: cannot find reserve.lo: No such file or directory
/usr/bin/ld: cannot find scan.lo: No such file or directory
/usr/bin/ld: cannot find sd_plugins.lo: No such file or directory
/usr/bin/ld: cannot find spool.lo: No such file or directory
/usr/bin/ld: cannot find tape_alert.lo: No such file or directory
/usr/bin/ld: cannot find vol_mgr.lo: No such file or directory
/usr/bin/ld: cannot find wait.lo: No such file or directory
/usr/bin/ld: cannot find tape_worm.lo: No such file or directory
/usr/bin/ld: cannot find fifo_dev.lo: No such file or directory
/usr/bin/ld: cannot find file_dev.lo: No such file or directory
/usr/bin/ld: cannot find tape_dev.lo: No such file or directory
/usr/bin/ld: cannot find vtape_dev.lo: No such file or directory
/usr/bin/ld: cannot find org_libsd_filemedia.lo: No such file or directory
/usr/bin/ld: cannot find org_libsd_quota.lo: No such file or directory
/usr/bin/ld: cannot find org_libsd_sir.lo: No such file or directory
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:312: libbacsd.la] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/mnt/ram/bacula-15.0.2/src/stored'
This is OS and compiler independent. I tried a couple of versions and it seems to have started with version 9. 7.4.7 works.