]> xenbits.xensource.com Git - libvirt.git/commitdiff
docs: added compiling page and significantly expanded windows page
authorJustin Clift <jclift@redhat.com>
Tue, 21 Dec 2010 09:38:37 +0000 (20:38 +1100)
committerJustin Clift <jclift@redhat.com>
Tue, 21 Dec 2010 09:55:10 +0000 (20:55 +1100)
Also added an additional menu placement for the windows page, in
order to attract further potential testers.

docs/compiling.html.in [new file with mode: 0644]
docs/downloads.html.in
docs/sitemap.html.in
docs/windows.html.in

diff --git a/docs/compiling.html.in b/docs/compiling.html.in
new file mode 100644 (file)
index 0000000..49bc7ee
--- /dev/null
@@ -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>
index 709bee8be14f9c7ccd9c503974f2d720e3c2a413..64a16c9f37acbdaa78ad35d4cd41b2ca44ea21d8 100644 (file)
 
     <br />
 
-    <h1><a name="installation">libvirt Installation</a></h1>
-
-    <h2><a name="Compilatio">Compiling a release tarball</a></h2>
-
-    <p>
-      libvirt uses the standard configure/make/install steps:
-    </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.
+      Once you've have obtained the libvirt source code, you can compile it
+      using the <a href="compiling.html">instructions here</a>.
     </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>
 </html>
index 7db59a1ec3564b02ebef5664e22bb68918f6ce44..63e420fc9278b43c27f92163b089cd5ccc9033bc 100644 (file)
       <li>
         <a href="downloads.html">Downloads</a>
         <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>
         <a href="docs.html">Documentation</a>
         <span>Information for users, administrators and developers</span>
         <ul>
+          <li>
+            <a href="compiling.html">Compiling</a>
+            <span>How to compile libvirt</span>
+          </li>
           <li>
             <a href="deployment.html">Deployment</a>
             <span>Information about deploying and using libvirt</span>
index 8ca6b0df286a47c4cc7b700ce308f893d68e6e61..9acf67d4633b3dcdfe26acd5acd92ac0a948940e 100644 (file)
   <body>
     <h1 >Windows support</h1>
 
+    <ul id="toc"></ul>
+
+    <p>
+      Libvirt is known to work as a client (not server) on Windows XP
+      (32-bit), and Windows 7 (64-bit).  Other Windows variants likely work
+      as well but we either haven't tested or received reports for them.
+    </p>
+
+    <h2><a name="installer">Experimental installation package</a></h2>
+
+    <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>
+      This version includes the libvirt development headers and libraries
+      for compiling against, the virsh shell with its needed dependencies,
+      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>
-      Libvirt can be compiled on Windows
-      using the free <a href="http://www.mingw.org/">MinGW compiler</a>.
-      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>
+      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>
-      Libvirt can only be built as a client on Windows
-      allowing remote access to systems libvirt servers.
-      Configure libvirt like this:
+      Use these options when following the instructions on the
+      <a href="compiling.html">Compiling</a> page.
     </p>
 
 <pre>
   --without-libvirtd
 </pre>
 
-    <p>
-      We intend to supply Windows binaries on this page
-      later, but at the moment you have to compile from source.
-    </p>
   </body>
 </html>