Skip to content

Build failure with 13.0 and 11.3 with s3_driver.h (S3RestoreTier)

Summary

Reproducibility Platform OS OS Version Product Version
always AMD64 Ubuntu Jammy 13.0.1 and git (branch 13.0 and 11.3)

Description

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[1]: *** [Makefile:276: cloud_dev.lo] Error 1
make[1]: 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

  1. ./configure ... --with-s3 ...
  2. make

Additional Information

config files:

#!/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