1 [![Build Status](https://travis-ci.org/libvirt/libvirt.svg)](https://travis-ci.org/libvirt/libvirt)
2 [![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/355/badge)](https://bestpractices.coreinfrastructure.org/projects/355)
4 Libvirt API for virtualization
5 ==============================
7 Libvirt provides a portable, long term stable C API for managing the
8 virtualization technologies provided by many operating systems. It
9 includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware
10 vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER
13 For some of these hypervisors, it provides a stateful management
14 daemon which runs on the virtualization host allowing access to the
15 API both by non-privileged local users and remote users.
17 Layered packages provide bindings of the libvirt C API into other
18 languages including Python, Perl, PHP, Go, Java, OCaml, as well as
19 mappings into object systems such as GObject, CIM and SNMP.
21 Further information about the libvirt project can be found on the
24 [https://libvirt.org](https://libvirt.org)
30 The libvirt C API is distributed under the terms of GNU Lesser General
31 Public License, version 2.1 (or later). Some parts of the code that are
32 not part of the C library may have the more restrictive GNU General
33 Public License, version 2.0 (or later). See the files `COPYING.LESSER`
34 and `COPYING` for full license terms & conditions.
40 Libvirt uses the GNU Autotools build system, so in general can be built
41 and installed with the usual commands. For example, to build in a manner
42 that is suitable for installing as root, use:
45 $ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
50 While to build & install as an unprivileged user
53 $ ./configure --prefix=$HOME/usr
58 The libvirt code relies on a large number of 3rd party libraries. These will
59 be detected during execution of the `configure` script and a summary printed
60 which lists any missing (optional) dependencies.
66 The libvirt project welcomes contributions in many ways. For most components
67 the best way to contribute is to send patches to the primary development
68 mailing list. Further guidance on this can be found on the website:
70 [https://libvirt.org/contribute.html](https://libvirt.org/contribute.html)
76 The libvirt project has two primary mailing lists:
78 * libvirt-users@redhat.com (**for user discussions**)
79 * libvir-list@redhat.com (**for development only**)
81 Further details on contacting the project are available on the website:
83 [https://libvirt.org/contact.html](https://libvirt.org/contact.html)