mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-08 12:41:29 +00:00
docs: added compiling page and significantly expanded windows page
Also added an additional menu placement for the windows page, in order to attract further potential testers.
This commit is contained in:
parent
da24a892f2
commit
2954eb7b35
75
docs/compiling.html.in
Normal file
75
docs/compiling.html.in
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<html>
|
||||||
|
<body>
|
||||||
|
<h1><a name="installation">libvirt Installation</a></h1>
|
||||||
|
|
||||||
|
<ul id="toc"></ul>
|
||||||
|
|
||||||
|
<h2><a name="compiling">Compiling a release tarball</a></h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
libvirt uses the standard configure/make/install steps:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
$ gunzip -c libvirt-x.x.x.tar.gz | tar xvf -
|
||||||
|
$ cd libvirt-x.x.x
|
||||||
|
$ ./configure</pre>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The <i>configure</i> script can be given options to change its default
|
||||||
|
behaviour.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
To get the complete list of the options it can take, pass it the
|
||||||
|
<i>--help</i> option like this:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
$ ./configure <i>--help</i></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>make 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>make install</i> command
|
||||||
|
without putting <b>sudo</b> before it.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
$ ./configure <i>[possible options]</i>
|
||||||
|
$ make
|
||||||
|
$ <b>sudo</b> <i>make 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 name="building">Building from a GIT checkout</a></h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The libvirt build process uses GNU autotools, so after obtaining a
|
||||||
|
checkout it is necessary to generate the configure script and Makefile.in
|
||||||
|
templates using the <code>autogen.sh</code> command, passing the extra
|
||||||
|
arguments as for configure. As an example, to do a complete build and
|
||||||
|
install it into your home directory run:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
$ ./autogen.sh --prefix=$HOME/usr --enable-compile-warnings=error
|
||||||
|
$ make
|
||||||
|
$ <b>sudo</b> make install</pre>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -91,46 +91,9 @@
|
|||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
<h1><a name="installation">libvirt Installation</a></h1>
|
|
||||||
|
|
||||||
<h2><a name="Compilatio">Compiling a release tarball</a></h2>
|
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
libvirt uses the standard configure/make/install steps:
|
Once you've have obtained the libvirt source code, you can compile it
|
||||||
|
using the <a href="compiling.html">instructions here</a>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<pre>
|
|
||||||
gunzip -c libvirt-xxx.tar.gz | tar xvf -
|
|
||||||
cd libvirt-xxxx
|
|
||||||
./configure --help</pre>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
To see the options, then the compilation/installation proper:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<pre>
|
|
||||||
./configure [possible options]
|
|
||||||
make
|
|
||||||
make install</pre>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
At that point you may have to rerun ldconfig or a similar utility to
|
|
||||||
update your list of installed shared libs.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h2><a name="build">Building from a GIT checkout</a></h2>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The libvirt build process uses GNU autotools, so after obtaining a
|
|
||||||
checkout it is necessary to generate the configure script and Makefile.in
|
|
||||||
templates using the <code>autogen.sh</code> command, passing the extra
|
|
||||||
arguments as for configure. As an example, to do a complete build and
|
|
||||||
install it into your home directory run:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<pre>
|
|
||||||
./autogen.sh --prefix=$HOME/usr --enable-compile-warnings=error
|
|
||||||
make
|
|
||||||
make install</pre>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -21,11 +21,21 @@
|
|||||||
<li>
|
<li>
|
||||||
<a href="downloads.html">Downloads</a>
|
<a href="downloads.html">Downloads</a>
|
||||||
<span>Get the latest source releases, binary builds and get access to the source repository</span>
|
<span>Get the latest source releases, binary builds and get access to the source repository</span>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="windows.html">Windows</a>
|
||||||
|
<span>Downloads for Windows</span>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="docs.html">Documentation</a>
|
<a href="docs.html">Documentation</a>
|
||||||
<span>Information for users, administrators and developers</span>
|
<span>Information for users, administrators and developers</span>
|
||||||
<ul>
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="compiling.html">Compiling</a>
|
||||||
|
<span>How to compile libvirt</span>
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="deployment.html">Deployment</a>
|
<a href="deployment.html">Deployment</a>
|
||||||
<span>Information about deploying and using libvirt</span>
|
<span>Information about deploying and using libvirt</span>
|
||||||
|
@ -3,20 +3,233 @@
|
|||||||
<body>
|
<body>
|
||||||
<h1 >Windows support</h1>
|
<h1 >Windows support</h1>
|
||||||
|
|
||||||
|
<ul id="toc"></ul>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Libvirt can be compiled on Windows
|
Libvirt is known to work as a client (not server) on Windows XP
|
||||||
using the free <a href="http://www.mingw.org/">MinGW compiler</a>.
|
(32-bit), and Windows 7 (64-bit). Other Windows variants likely work
|
||||||
You can also cross-compile to a Windows target
|
as well but we either haven't tested or received reports for them.
|
||||||
from a Fedora machine using the packages available
|
</p>
|
||||||
<a href="http://hg.et.redhat.com/misc/fedora-mingw--devel/">from
|
|
||||||
the Fedora MinGW project</a>
|
<h2><a name="installer">Experimental installation package</a></h2>
|
||||||
(which includes a working libvirt specfile).
|
|
||||||
|
<p>
|
||||||
|
A windows installation package is in development. An experimental
|
||||||
|
version is available here:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<a href="http://libvirt.org/sources/win32_experimental/Libvirt-0.8.6-2.exe">http://libvirt.org/sources/win32_experimental/Libvirt-0.8.6-2.exe</a>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<b>It is not production ready.</b>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Libvirt can only be built as a client on Windows
|
This version includes the libvirt development headers and libraries
|
||||||
allowing remote access to systems libvirt servers.
|
for compiling against, the virsh shell with its needed dependencies,
|
||||||
Configure libvirt like this:
|
and untested Python bindings.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3><a name="caveats">Caveats</h3>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
This installer just repackages the files compiled using Matthias
|
||||||
|
Bolte's msys_setup scripting (described below).
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
This is a .exe installer, created using NSIS. We're looking into
|
||||||
|
something to create .msi installers as well.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
The script for the NSIS installer is available online
|
||||||
|
<a href="https://github.com/justinclift/nsis_libvirt_installer">here</a>.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3><a name="knowninstallerprobs">Existing problems with this installer we know about</a>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
These are problems we know about, and need to be fixed in subsequent
|
||||||
|
versions of the installer (assistance welcomed):
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
New versions install over other libvirt versions
|
||||||
|
<br /><br />
|
||||||
|
If a version of this installer has installed libvirt on the system
|
||||||
|
already, this installer will automatically suggest the same
|
||||||
|
installation location, then overwrite the version already there
|
||||||
|
without checking.
|
||||||
|
<br /><br />
|
||||||
|
This is fairly non-optimal, and should be fixed. What should
|
||||||
|
probably happen, is for this installer to detect an existing
|
||||||
|
installation then offer to either uninstall it first or ask for a
|
||||||
|
new installation location.
|
||||||
|
<br /><br />
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
Start menu shortcuts aren't being removed at uninstall time
|
||||||
|
<br /><br />
|
||||||
|
Not sure why yet. Needs to be investigated.
|
||||||
|
<br /><br />
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
Libvirt dll files should be added to path
|
||||||
|
<br /><br />
|
||||||
|
At the moment, anything that needs to use the libvirt dll files
|
||||||
|
(i.e. the C# bindings) won't automatically find them. This can be
|
||||||
|
worked around by copying the dll files into the same directory as
|
||||||
|
whatever needs them, but is probably not an optimal approach.
|
||||||
|
There might be a better way and needs to be investigated.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2><a name="conntypes">Connection types</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
These connection types are known to work:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>QEMU with TLS (qemu+tls://)</li>
|
||||||
|
<li>QEMU with direct TCP (qemu+tcp://)</li>
|
||||||
|
<li>VMware ESX (esx://)</li>
|
||||||
|
<li>VMware VPX (vpx://)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
These connection types are known not to work:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>QEMU with SSH (qemu+ssh://)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
All other connection types may or may not work, and haven't been
|
||||||
|
tested.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Please let us know either the results (either way) if you do.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<b>WARNING - The qemu+tcp:// connection type passes all traffic
|
||||||
|
without encryption. This is a security hazard, and should <i>not</i>
|
||||||
|
be used in security sensitive environments.</b>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2><a name="esx">Connecting to VMware ESX/vSphere</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Details on the capabilities and connection string syntax used for
|
||||||
|
connecting to VMware ESX and vSphere can be found online here:<br />
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<a href="http://libvirt.org/drvesx.html">http://libvirt.org/drvesx.html</a>
|
||||||
|
|
||||||
|
<h2><a name="tlscerts">TLS Certificates</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
TLS certificates are needed prior to connecting to either QEMU
|
||||||
|
instances with TLS, or connecting to VMware ESX/vSphere.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Information on generating TLS certificates can be found here:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<a href="http://wiki.libvirt.org/page/TLSSetup">http://wiki.libvirt.org/page/TLSSetup</a>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
These instructions are for *nix, and have not yet been adapted for
|
||||||
|
Windows. You'll need to figure out the Windows equivalents until
|
||||||
|
that's done (sorry). If you can help us out with this, that would be
|
||||||
|
really welcome.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The locations of the TLS certificates and key file are hard coded,
|
||||||
|
rather than being configurable.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The Certificate Authority (CA) certificate file must be placed in:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>%APPDATA%\libvirt\pki\CA\cacert.pem</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The Client certificate file must be placed in:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>%APPDATA%\libvirt\pki\libvirt\clientcert.pem</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The Client key file must be placed in:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>%APPDATA%\libvirt\pki\libvirt\private\clientkey.pem</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
On an example Windows 7 x64 system here, this resolves to these paths:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>C:\Users\someuser\AppData\Roaming\libvirt\pki\CA\cacert.pem</li>
|
||||||
|
<li>C:\Users\someuser\AppData\Roaming\libvirt\pki\libvirt\clientcert.pem</li>
|
||||||
|
<li>C:\Users\someuser\AppData\Roaming\libvirt\pki\libvirt\private\clientkey.pem</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2><a name="feedback">Feedback</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Feedback and suggestions on changes to make and what else to include
|
||||||
|
<a href="contact.html">are desired</a>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2><a name="compiling">Compiling yourself</a></h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Libvirt can be compiled on Windows using the free
|
||||||
|
<a href="http://www.mingw.org/">MinGW compiler</a>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3><a name="msys_setup">MSYS Build script</a></h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The easiest way is to use the <b>msys_setup</b> script, developed by
|
||||||
|
Matthias Bolte. This is actively developed and kept current with
|
||||||
|
libvirt releases:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<a href="https://github.com/photron/msys_setup">https://github.com/photron/msys_setup</a>
|
||||||
|
|
||||||
|
<h3><a name="cross-compile">Cross compiling</a></h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
You can also cross-compile to a Windows target from a Fedora machine
|
||||||
|
using the packages available
|
||||||
|
<a href="http://hg.et.redhat.com/misc/fedora-mingw--devel/">from the Fedora MinGW project</a>
|
||||||
|
(which includes a working libvirt specfile).
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3><a name="configure">By hand</a></h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Use these options when following the instructions on the
|
||||||
|
<a href="compiling.html">Compiling</a> page.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<pre>
|
<pre>
|
||||||
@ -32,9 +245,5 @@
|
|||||||
--without-libvirtd
|
--without-libvirtd
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
<p>
|
|
||||||
We intend to supply Windows binaries on this page
|
|
||||||
later, but at the moment you have to compile from source.
|
|
||||||
</p>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user