<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!-- Copyright David Abrahams 2006. Distributed under the Boost -->
<!-- Software License, Version 1.0. (See accompanying -->
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
<html>
  <head>
    <meta name="generator" content=
    "HTML Tidy for Windows (vers 1st August 2002), see www.w3.org">
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link rel="stylesheet" type="text/css" href="../boost.css">

    <title>Boost.Python - Known Working Platforms and Compilers</title>
  </head>

  <body link="#0000ff" vlink="#800080">
    <table border="0" cellpadding="7" cellspacing="0" width="100%" summary=
    "header">
      <tr>
        <td valign="top" width="300">
          <h3><a href="../../../../index.htm"><img height="86" width="277"
          alt="C++ Boost" src="../../../../boost.png" border="0"></a></h3>
        </td>

        <td valign="top">
          <h1 align="center"><a href="../index.html">Boost.Python</a></h1>

          <h2 align="center">Known Working Platforms and Compilers</h2>
        </td>
      </tr>
    </table>
    <hr>
    Please see
    our <a
    href="http://boost.sourceforge.net/regression-logs">regression
    logs</a> for up-to-date information.  Note that logs not marked
    otherwise reflect the CVS state, not the condition of the release.

    <p>
    Earlier versions of <b>Boost.Python</b> have been successfully
    tested on the following platforms and compilers.  

    <dl class="page-index">
      <dt>Unix Platforms:</dt>

      <dd>
        <dl>
          <dt>with Python <a href="http://www.python.org/2.2">2.2</a> and <a
          href="http://www.python.org/2.2.2">2.2.2b1</a>:</dt>

          <dd>
            <dl>
              <dt><a href="http://gcc.gnu.org">GCC</a> 2.95.3, 2.96, 3.0.4,
              3.1, and 3.2 on <a href="http://www.redhat.com">RedHat Linux 7.3</a>
              for Intel x86</dt>

              <dt>Tru64 CXX 6.5.1 on OSF v. 5.1 for Dec/Compaq
              Alpha</dt>

              <dt>
              MIPSPro 7.3.1.2m on <a href=
              "http://www.sgi.com/software/irix6.5/">IRIX 6.5</a> for SGI
              mips</dt>

              <dt><a href="http://gcc.gnu.org">GCC 3.1</a> on SunOS 5.8</dt>
            </dl>
          </dd>

          <dt>with Python <a href=
          "http://www.python.org/2.2.1">2.2.1</a></dt>

          <dd>
            <dl>
              <dt>KCC 3.4d on OSF v. 5.1 for Dec/Compaq Alpha</dt>

              <dt>KCC 3.4d</a> on AIX</dt>
            </dl>
          </dd>
        </dl>
        <br>
      </dd>

      <dt>Microsoft Windows XP Professional with Python <a href=
      "http://www.python.org/2.2">2.2</a>, <a href=
      "http://www.python.org/2.2.1">2.2.1</a>, and <a href=
      "http://www.python.org/2.2.2">2.2.2b1</a>:</dt>

      <dd>
        <dl>
          <dt><a href=
          "http://msdn.microsoft.com/visualc/default.asp">Microsoft Visual
          C++</a> 6, 7, and 7.1 beta</dt>

          <dt><a href=
          "http://msdn.microsoft.com/visualc/default.asp">Microsoft Visual
          C++ 6</a> with <a href="http://www.stlport.org">STLPort
          4.5.3</a></dt>

          <dt><a href=
          "http://www.metrowerks.com/MW/Develop/Desktop/Windows/Professional/Default.htm">
          Metrowerks CodeWarrior</a> 7.2, 8.0, 8.2 and 8.3 beta</dt>

          <dt><a href=
          "http://www.intel.com/software/products/compilers/c60/">Intel
          C++</a> 5.0, 6.0, and 7.0 beta</dt>

          <dt><a href=
          "http://www.intel.com/software/products/compilers/c60/">Intel C++
          5.0</a> with <a href="http://www.stlport.org">STLPort
          4.5.3</a></dt>

          <dt><a href="http://www.cygwin.com">Cygwin</a> <a href=
          "http://gcc.gnu.org">GCC</a> 3.0.4 and 3.2</dt>

          <dt><a href="http://www.mingw.org">MinGW-1.1</a> (<a href=
          "http://gcc.gnu.org">GCC 2.95.3-5</a>)</dt>

          <dt><a href="http://www.mingw.org">MinGW-2.0</a> (<a href=
          "http://gcc.gnu.org">GCC 3.2</a>)</dt>
        </dl>
      </dd>
    </dl>
    <hr>

    <p>Revised 
    <!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->
  13 November, 2002
  <!--webbot bot="Timestamp" endspan i-checksum="39359" -->
    </p>

    <p><i>&copy; Copyright <a href=
    "http://www.boost.org/people/dave_abrahams.htm">Dave Abrahams</a> 2002.</i></p>
  </body>
</html>

