<?xml version="1.0"?>
<html>
  <body>
    <h1>Windows port</h1>

    <p>
      There is no official Windows port of libvirt-php available yet but if you want to write the Windows port
      we would appreciate it.</p>
    <p>Since libvirt is known to be running on Windows (please
      refer to <a href="http://libvirt.org/windows.html">Information on libvirt Windows port</a>) it should
      be possible and reasonable to create the libvirt-php port for Windows based operating systems, i.e. in
      the form of Windows dynamic linked library for Windows version of PHP.
    </p>

    <h2>Preparations for libvirt-php Windows port</h2>
    <p>
      If you are interested in writing Windows port you should download the current codebase from the GIT repository
      and create a patch adding the Windows port itself. Before you do so you have to compile libvirt on Windows
      to be able to access it using the Windows dynamic linked (DLL) library. For more information about getting
      libvirt client to install on Windows box please refer to <a href="http://libvirt.org/windows.html">Information on libvirt Windows port</a>).
    </p>

    <h2>Reference materials on writing Windows libraries/applications under Linux</h2>
    <p>
      If you seek for some reference information about Windows application/libraries programming under the Linux operating system please refer to
      author's programming guide at <a href="http://migsoft.net/linux-winprog.html">Windows programming under Linux programming guide</a>. Also,
      there are some other references useful like:<br /><br />
      <a href="http://stackoverflow.com/questions/2096519/from-mingw-static-library-a-to-visual-studio-static-library-lib">Linking .a library to a VS2008 static library</a><br />
      <a href="http://www.willus.com/mingw/yongweiwu_stdcall.html">Stdcall and DLL tools of MSVC and MinGW</a><br />
      <a href="http://stackoverflow.com/questions/2521926/win32-php-extension-development">Win32 PHP Extension Development</a><br />
      <a href="https://www.google.com/#q=using+ming32+to+compile+php+extension">Google search results</a>
    </p>

    <h2>Notes on writing PHP extensions under Windows</h2>
    <p>
      The situation seems to be pretty complicated for Windows version of PHP since there's no <i>phpize</i> tool or <i>php-config</i> to prepare
      the module for you. There are some pointers on the internet how to write PHP extensions under Windows systems however all of them are using
      Visual C++ compiler (although Express edition should be fine I have allocated some of my spare time to investigate this further but I was
      unable to make it work because of some errors in Zend header files). Steps using Visual Studio (C++) could be found at
      <a href="http://netindonesia.net/blogs/risman/archive/2008/06/15/part-2-writing-php-extension.aspx">http://netindonesia.net/blogs/risman/archive/2008/06/15/part-2-writing-php-extension.aspx</a> but this is the one I tried and that was not working for me.
    </p>

  </body>
</html>
