Development install on windows

The easy way - a super-package

The easiest way to get the dependencies is to install PythonXY or the Enthought Tool Suite . This gives you MinGW, Python, Numpy, Scipy, ipython and matplotlib (and much more).

The hard way - by components

If instead you want to do it by component, try the instructions below.


  • Download and install MinGW

  • Download and install the windows binary for Python

  • Download and install the Numpy and Scipy binaries

  • Download and install Sympy


  • Download and install ipython, being careful to follow the windows installation instructions

  • Download and install matplotlib

Alternatively, if you are very brave, you may want to install numpy / scipy from source - see our maybe out of date Building Scipy/Numpy on Windows with Optimized Numerical Libraries for details.

Getting and installing NIPY

You will next need to get the NIPY code via version control:

  • Download and install the windows binary for git

  • Go to the windows menu, find the git menu, and run git in a windows terminal.

You should now be able to follow the instructions in Submitting a patch, but with the following modifications:

Running the build / install

Here we assume that you do not have the Microsoft visual C tools, you did not use the ETS package (which sets the compiler for you) and are using a version of MinGW to compile NIPY.

First, for the python steps, you will need to add the --compiler=mingw32 flag, like this:

python build --compiler=mingw32 install

Note that, with this setup you cannot do inplace (developer) installs (like python build_ext --inplace) because of a six-legged python packaging feature that does not allow the compiler options (here --compiler=mingw32) to be passed from the build_ext command.

If you want to be able to do that, add these lines to your distutils.cfg file


compiler = mingw32

See for details on this file. After you’ve done this, you can run the standard python build_ext --inplace command.

The command line from Windows

The default windows XP command line cmd is very basic. You might consider using the Cygwin bash shell, or you may want to use the ipython shell to work in. For system commands use the ! escape, like this, from the ipython prompt:

!python build --compiler=mingw32