Signed-off-by: Erik Skultety <eskultet@xxxxxxxxxx> --- docs/compiling.html.in | 115 ----------------------------------------- docs/compiling.rst | 95 ++++++++++++++++++++++++++++++++++ docs/meson.build | 2 +- 3 files changed, 96 insertions(+), 116 deletions(-) delete mode 100644 docs/compiling.html.in create mode 100644 docs/compiling.rst diff --git a/docs/compiling.html.in b/docs/compiling.html.in deleted file mode 100644 index df6074780f..0000000000 --- a/docs/compiling.html.in +++ /dev/null @@ -1,115 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE html> -<html xmlns="http://www.w3.org/1999/xhtml"> - <body> - <h1><a id="installation">libvirt Installation</a></h1> - - <ul id="toc"></ul> - - <h2><a id="compiling">Compiling a release tarball</a></h2> - - <p> - libvirt uses the standard setup/build/install steps and mandates - that the build directory is different from the source directory: - </p> - - <pre> -$ xz -dc libvirt-x.x.x.tar.xz | tar xvf - -$ cd libvirt-x.x.x -$ meson build</pre> - - <p> - The <i>meson</i> script can be given options to change its default - behaviour. - </p> - - <p> - To get the complete list of the options run the following command: - </p> - - <pre> -$ meson configure</pre> - - <p> - When you have determined which options you want to use (if any), - continue the process. - </p> - - <p> - Note the use of <b>sudo</b> with the <i>ninja install</i> command - below. Using sudo is only required when installing to a location your - user does not have write access to. Installing to a system location - is a good example of this. - </p> - - <p> - If you are installing to a location that your user <i>does</i> have write - access to, then you can instead run the <i>ninja install</i> command - without putting <b>sudo</b> before it. - </p> - - <pre> -$ meson build <i>[possible options]</i> -$ ninja -C build -$ <b>sudo</b> <i>ninja -C build install</i></pre> - - <p> - At this point you <b>may</b> have to run ldconfig or a similar utility - to update your list of installed shared libs. - </p> - - <h2><a id="building">Building from a GIT checkout</a></h2> - - <p> - The libvirt build process uses Meson build system. By default when - the <code>meson</code> is run from within a GIT checkout, it - will turn on -Werror for builds. This can be disabled with - --werror=false, but this is not recommended. - </p> - - <p>To build & install libvirt to your home - directory the following commands can be run: - </p> - - <pre> -$ meson build --prefix=$HOME/usr -$ ninja -C build -$ <b>sudo</b> ninja -C build install</pre> - - <p> - Be aware though, that binaries built with a custom prefix will not - interoperate with OS vendor provided binaries, since the UNIX socket - paths will all be different. To produce a build that is compatible - with normal OS vendor prefixes, use - </p> - - <pre> -$ meson build -Dsystem=true -$ ninja -C build - </pre> - - <p> - When doing this for day-to-day development purposes, it is recommended - not to install over the OS vendor provided binaries. Instead simply - run libvirt directly from the source tree. For example to run - a privileged libvirtd instance - </p> - - <pre> -$ su - -# service libvirtd stop (or systemctl stop libvirtd.service) -# /home/to/your/checkout/build/src/libvirtd - </pre> - - <p> - It is also possible to run virsh directly from the build tree - using the ./run script (which sets some environment variables): - </p> - - <pre> -$ pwd -/home/to/your/checkout/build -$ ./run ./tools/virsh .... - </pre> - </body> -</html> diff --git a/docs/compiling.rst b/docs/compiling.rst new file mode 100644 index 0000000000..62519b6bdb --- /dev/null +++ b/docs/compiling.rst @@ -0,0 +1,95 @@ +==================== +libvirt Installation +==================== + +.. contents:: + +Compiling a release tarball +--------------------------- + +libvirt uses the standard setup/build/install steps and mandates that +the build directory is different from the source directory: + +:: + + $ xz -dc libvirt-x.x.x.tar.xz | tar xvf - + $ cd libvirt-x.x.x + $ meson build + +The *meson* script can be given options to change its default behaviour. + +To get the complete list of the options run the following command: + +:: + + $ meson configure + +When you have determined which options you want to use (if any), +continue the process. + +Note the use of **sudo** with the *ninja install* command below. Using +sudo is only required when installing to a location your user does not +have write access to. Installing to a system location is a good example +of this. + +If you are installing to a location that your user *does* have write +access to, then you can instead run the *ninja install* command without +putting **sudo** before it. + +:: + + $ meson build [possible options] + $ ninja -C build + $ sudo ninja -C build install + +At this point you **may** have to run ldconfig or a similar utility to +update your list of installed shared libs. + +Building from a GIT checkout +---------------------------- + +The libvirt build process uses Meson build system. By default when the +``meson`` is run from within a GIT checkout, it will turn on -Werror for +builds. This can be disabled with --werror=false, but this is not +recommended. + +To build & install libvirt to your home directory the following commands +can be run: + +:: + + $ meson build --prefix=$HOME/usr + $ ninja -C build + $ sudo ninja -C build install + +Be aware though, that binaries built with a custom prefix will not +interoperate with OS vendor provided binaries, since the UNIX socket +paths will all be different. To produce a build that is compatible with +normal OS vendor prefixes, use + +:: + + $ meson build -Dsystem=true + $ ninja -C build + + +When doing this for day-to-day development purposes, it is recommended +not to install over the OS vendor provided binaries. Instead simply run +libvirt directly from the source tree. For example to run a privileged +libvirtd instance + +:: + + $ su - + # service libvirtd stop (or systemctl stop libvirtd.service) + # /home/to/your/checkout/build/src/libvirtd + + +It is also possible to run virsh directly from the build tree using the +./run script (which sets some environment variables): + +:: + + $ pwd + /home/to/your/checkout/build + $ ./run ./tools/virsh .... diff --git a/docs/meson.build b/docs/meson.build index f4b29a2e59..e816953bf4 100644 --- a/docs/meson.build +++ b/docs/meson.build @@ -34,7 +34,6 @@ docs_html_in_files = [ '404', 'bugs', 'cgroups', - 'compiling', 'contact', 'contribute', 'csharp', @@ -111,6 +110,7 @@ docs_rst_files = [ 'ci', 'coding-style', 'committer-guidelines', + 'compiling', 'daemons', 'developer-tooling', 'formatbackup', -- 2.29.2