[Numpy-discussion] Compiling for free on Windows32

josef.pktd at gmail.com josef.pktd at gmail.com
Wed Apr 15 15:42:05 EDT 2009


On Wed, Apr 15, 2009 at 3:17 PM, David Cournapeau <cournape at gmail.com> wrote:
> On Thu, Apr 16, 2009 at 1:17 AM, Fadhley Salim
> <Fadhley.Salim at uk.calyon.com> wrote:
>> I've been asked to provide Numpy & Scipy as python egg files.
>> Unfortunately Numpy and Scipy do not make official releases of their
>> product in .egg form for a Win32 platform - that means if I want eggs
>> then I have to compile them myself.
>
> Yes.
>
>>
>> At the moment my employer provides Visual Studio.Net 2003, which will
>> compile no version of Numpy later than 1.1.1 - every version released
>> subsequently cannot be compiled with VS2003. I've tried.
>
> Yes, this is a visual studio bug.
>
>>
>> What I'd really like is some other compiler I can use, perhaps for free,
>> but at a push as a free time-limited trial. I would use that to compile
>> the eggs. Is anybody aware of another compiler that I can download and
>> use without paying anything and will definitely compile Numpy on
>> Windows?
>
> The compilers that are regularly used to compile python on windows are
> the mingw compilers. If you only need numpy and not scipy, there are
> no dependencies, and only the C compiler is needed. It should compile
> out of the box.
>
> Otherwise, you will need to compile your own blas/lapack, which is
> complicated on windows. The blas/lapack sources are to be downloaded
> from netlib.org:
>
> http://netlib.org/lapack/
>
> You should not use the version 3.2 (3.1.1 is fine, and is the version
> used to build the numpy binaries).
>
> cheers,
>
> David

numpy compiles fine with mingw, but I never managed to build an egg.
I'm not able to get the --compiler=mingw32
to be recognized.

an error like
No module named msvccompiler in numpy.distutils; trying from distutils
error: Python was built with Visual Studio 2003;
extensions must be built with a compiler than can generate compatible binaries.
Visual Studio 2003 was not found on this system. If you have Cygwin installed,
you can try compiling with MingW32, by passing "-c mingw32" to setup.py.

but -c mingw32 is not a valid command line option:
python setupegg.py bdist_egg --compiler=mingw32
error: option --compiler not recognized

It also doesn't take the compiler specified in pythons distutils.cfg.

No problems with build, and bdist, but it doesn't work with setuptools.

The problem that the combination of setuptools and numpy distutils
doesn't honor -c mingw32, I had now for several packages, but as usual
I'm not sure whether it's my setup or a bug.

Josef



More information about the NumPy-Discussion mailing list