Software:libarchive

From HandWiki
Short description: Open-source archive and compression library

libarchive
Initial release2003; 21 years ago (2003)[1]
Written inC
Operating systemcross-platform
Typelibrary
LicenseNew BSD License[1]

libarchive is a free and open-source library for reading and writing various archive and compression formats. It is written in C and works on most Unix-like systems and Windows.[2]

History

libarchive's development was started in 2003 as part of the FreeBSD project.[3] During the early years it was led by the FreeBSD project, but later it became an independent project.[4] It was first released with FreeBSD 5.3 in November 2004.[5]

libarchive

libarchive automatically detects and reads archive formats.[6] If the archive is compressed, libarchive also detects and handles compression formats before evaluating the archive.[1] libarchive is designed to minimize the copying of data internally for optimal performance.[7]

Supported archive formats:[8]

  • 7z - read and write
  • ar - read and write
  • cab - read only
  • cpio - read and write
  • ISO9660- read and write
  • lha & lzh - read only
  • pax - read and write
  • rar - read only
  • shar - write only
  • tar - read and write
  • warc (ISO 28500:2009) - read and write
  • xar - read and write
  • zip - read and write

Utilities

libarchive provides command-line utilities called bsdtar and bsdcpio.[1] These are complete re-implementation based on libarchive.[9][10] These are the default system tar and cpio on FreeBSD, NetBSD, macOS and Windows.[1]

There is also bsdcat, designed to decompress a file to the standard output like zcat.[11]

Users

libarchive was originally developed for FreeBSD, but is also used in NetBSD and macOS as part of those operating systems.[1]

bsdtar has been included in Windows since Windows 10 April 2018 Update.[12] In May 2023, Microsoft announced Windows 11 will natively support additional archive formats such as 7z and RAR via libarchive.[13]

References

External links