Build failure with 13.0 and 11.3 with s3_driver.h (S3RestoreTier)
|Reproducibility||Platform||OS||OS Version||Product Version|
|always||AMD64||Ubuntu||Jammy||13.0.1 and git (branch 13.0 and 11.3)|
I'm trying to build Bacula with S3 support so I can backup both to tape as well as to Backblaze via their S3 endpoint. When building with libs3, however, I seem to run into the following build failure:
Making libbacsd.la ... /home/tim/tmp/bacula-community/bacula/libtool --silent --tag=CXX --mode=link /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 /opt/bacula/lib -release 13.0.1 LT Compiling cloud_parts.c LT Compiling cloud_transfer_mgr.c LT Compiling cloud_dev.c In file included from cloud_dev.c:34: s3_driver.h:39:4: error: 'S3RestoreTier' does not name a type 39 | S3RestoreTier transfer_priority; | ^~~~~~~~~~~~~ make: *** [Makefile:276: cloud_dev.lo] Error 1 make: Leaving directory '/home/tim/tmp/bacula-community/bacula/src/stored' ====== Error in /home/tim/tmp/bacula-community/bacula/src/stored ====== make: *** [Makefile:162: all] Error 1
This happens both with the release version of Bacula source (13.0.1) as well as the git repository. I tried both the 13 and 11 branches. This is with 22.04 (Jammy) AMD64 on a Ryzen system with gcc version 11.2. Related aside, the docs seem to be a little dated as far as gcc versions to use (e.g. 2.95 is mentioned here: https://www.bacula.org/11.0.x-manuals/en/main/System_Requirements.html and 3.3.2 is mentioned here: https://www.bacula.org/13.0.x-manuals/en/misc/Manually_Installing_Bacula.html).
Steps to Reproduce
- ./configure ... --with-s3 ...
#!/bin/bash sudo make distclean CFLAGS="-g -O2 -Wall" ./configure --with-mysql --with-systemd \ --prefix=/opt/bacula \ --sbindir=/opt/bacula/bin \ --sysconfdir=/opt/bacula/etc \ --with-pid-dir=/var/run \ --with-subsys-dir=/var/run \ --with-working-dir=/opt/bacula/working \ --with-s3 \ --enable-conio
If I remove the
--with-s3 option, Bacula builds without issue