Table of Contents
- CURRENT STABLE RELEASES
- libisofs-1.5.6.pl01.tar.gz Mon Jun 12 2023 git tag | wiki | Signature: libisofs-1.5.6.pl01.tar.gz.sig
- libburn-1.5.6.tar.gz Wed Jun 07 2023 git tag | wiki | Signature: libburn-1.5.6.tar.gz.sig
- libisoburn-1.5.6.tar.gz Wed Jun 07 2023 git tag | wiki | Signature: libisoburn-1.5.6.tar.gz.sig
- System Requirements:
- Optional System Components:
- Development Repositories
- Outdated Releases
This page contains the official source code releases of the libburnia project and pointers to the current development repository.
CURRENT STABLE RELEASES
libisofs-1.5.6.pl01.tar.gz Mon Jun 12 2023 git tag | wiki | Signature: libisofs-1.5.6.pl01.tar.gz.sig
- Bug fix: iso_write_opts_set_part_like_isohybrid() did not cause a MBR partition table if the partitions are data files in the ISO rather than appended
- Bug fix: The lseek methods of IsoFileSource for local filesystem and loaded ISO returned libisofs error codes as positive off_t numbers
- Bug fix: Freshly cloned data files from imported image were not marked as imported. Thanks to Ivan Shmakov. (Closes: #1022851)
- Bug fix: Size of further CE area was calculated wrong if its CE entry ended exactly at a block boundary
- New iso_write_opts_set_system_area() option bits 16: GPT "Legacy BIOS bootable" and 17: GPT writable
- New API calls iso_assess_written_features(), iso_read_image_feature_named(), iso_read_image_features_text()
- Allowed lseekable device files with iso_tree_add_new_cut_out_node(). Proof-of-concept by Ivan Shmakov.
- New API call iso_write_opts_set_max_ce_entries()
Reason for .pl01:
- Bug fix: On non-GNU/Linux systems ssize_t was not defined in rockridge.h . Report and fix proposal by Rui Chen.
libburn-1.5.6.tar.gz Wed Jun 07 2023 git tag | wiki | Signature: libburn-1.5.6.tar.gz.sig
libburn and cdrskin novelties:
- Bug fix: Overburning with cdrskin option -force ended by a libburn error
- New API call burn_write_opts_set_bdr_obs_exempt()
- New cdrskin option --bdr_obs_exempt
- Officially enabled overburning with burn_write_opts_set_force(,1)
libisoburn-1.5.6.tar.gz Wed Jun 07 2023 git tag | wiki | Signature: libisoburn-1.5.6.tar.gz.sig
libisoburn and xorriso novelties:
- New API call isoburn_assess_written_features()
- New API calls isoburn_igopt_set_max_ce_entries(), isoburn_igopt_get_max_ce_entries()
- New flag bit12 with isoburn_read_iso_head(): Read even if start of multi-session emulation is damaged
- Bug fix: False -status failure with -boot_image --interval:appended_partition
- Bug fix: -no_rc prevented pre-scanning of arguments for stdio output and others. Introduced by mistake in a62f6af5, 2011.10.18.162119.
- Bug fix: -not_leaf and -not_paths were not applied to -extract and alike
- Bug fix: -report_system_area cmd misperceived -part_like_isohybrid with -isohybrid-gpt-basdat
- Bug fix: -report_system_area cmd misperceived combination of isohybrid and appended partition in GPT
- Bug fix: -as mkisofs option -part_like_isohybrid did not cause a MBR partition table if the partitions are data files in the ISO rather than appended
- Bug fix: Split file directories (-split_size) were created with wrong permissions
- Bug fix: Partition offset was preserved from -indev rather than from -outdev
- Bug fix: Data files named /boot.catalog or ./boot.cat could be left out of the emerging ISO if the boot catalog was set to be hidden
- Bug fix: -toc reported wrong track LBA with overwritable media with unrecognized content (pseudo-closed)
- Bug fix: -find test -has_xattr matched "isofs." attributes in -xattr mode "any"
- New -boot_image settings gpt_iso_bootable= and gpt_iso_not_ro=
- New -as mkisofs options --gpt-iso-bootable and --gpt-iso-not-ro
- New -as cdrecord option --obs_pad. Automatic no_emul_toc with -as cdrecord.
- New parameters "obs_pad" and "bdr_obs_exempt" for -dvd_obs
- New -as cdrecord option --bdr_obs_exempt
- New command -assess_indev_features
- New -find test -size
- New -compliance rules max_ce_entries=, max_ce_drop=
- Allowed lseekable device files with -cut_out. Proof-of-concept by Ivan Shmakov on bugs.debian.org. (Closes: #1010098)
The release tarballs above need only vanilla tools like
You may verify the downloaded tarballs by help of the provided Signature
gpg --keyserver keyserver.ubuntu.com --recv-keys ABC0A854 gpg --verify lib...x.y.z.tar.gz.sig lib...x.y.z.tar.gz
which should confirm
gpg: Good signature from "Thomas Schmitt <firstname.lastname@example.org>" Primary key fingerprint: 44BC 9FD0 D688 EB00 7C4D D029 E9CB DFC0 ABC0 A854
For building the libraries do
tar xzf .../lib...x.y.z.tar.gz cd lib...x.y.z ./configure ; make
For installation execute (probably you need to be superuser)
Linux with kernel 2.4:
ide-scsifor IDE CD/DVD drives
Linux with kernel 2.6 or newer:
atapicamfor IDE and SATA drives.
Other X/Open compliant systems:
libpthread. There will only be POSIX i/o with disk file objects, but no direct MMC operation on CD/DVD/BD drives.
Optional System Components:
libeditcan substitute for
If the development and runtime part of an optional component is present
at compile time, then the runtime part must be present at run time.
./configure --help for enable/disable options.
If you want to run a bleeding-edge version of
libisoburn then you need
autotools of at least version 1.7.
You need git for downloading. On FreeBSD or for release tarball production you will have to make a change in files ./ltmain.sh.
Download and build libburn:
git clone https://dev.lovelyhq.com/libburnia/libburn.git cd libburn ./bootstrap ; ./configure ; make
Download and build libisofs:
git clone https://dev.lovelyhq.com/libburnia/libisofs.git cd libisofs ./bootstrap ; ./configure ; make
Download and build libisoburn:
git clone https://dev.lovelyhq.com/libburnia/libisoburn.git cd libisoburn ./bootstrap ; ./configure ; make
Building from Repositories on BSD and General Release Tarball Production
Above release tarballs are well prepared for FreeBSD, NetBSD, and OpenBSD. But build step ./bootstrap, which is necessary when building from repositories, imports some undesirable settings from a vanilla autotools installation.
In order to get our intended
.so numbering on FreeBSD (
you have to change the file
after it got generated by
./bootstrap from a global template file
on your system.
For NetBSD and OpenBSD, the file
./aclocal.m4 must be edited
./ltmain.sh probably needs another change.
This must be done before anybody runs
on FreeBSD, NetBSD, or OpenBSD.
For FreeBSD the change in
./ltmain.sh is from
freebsd-elf) major=".$current" versuffix=".$current"; ;;
freebsd-elf) major=.`expr $current - $age` versuffix="$major" ;;
To get the
.so numbering scheme of NetBSD and OpenBSD
library.so.SONAME.age), make sure
version_type to "netbsd":
./ltmain.sh has to interpret by
netbsd) major=.`expr $current - $age` versuffix="$major.$age" ;;
The new case block should be inserted after the one for
./ltmain.sh stems from e.g.
./aclocal.m4 stems from e.g.
On my system there are cases for
openbsd*) which set
version_type to "sunos".
For producing libburnia release tarballs - regardless on what kind of system -
this change must have been applied and
./configure must have been run before
so that it will not be needed when building those releases on FreeBSD.
(Sorry for the inconvenience. autotools had to choose from two undesirable alternatives on FreeBSD. Regrettably it implements the one that is not in our intention. One can change this choice in the global template file.)