Python distutils build problems with MinGW

Andrej Mitrovic andrej.mitrovich at gmail.com
Mon Feb 1 11:31:34 EST 2010


On Feb 1, 4:03 am, Andrej Mitrovic <andrej.mitrov... at gmail.com> wrote:
> On Feb 1, 2:59 am, Andrej Mitrovic <andrej.mitrov... at gmail.com> wrote:
>
>
>
> > Hi,
>
> > I've made a similar post on the Cython mailing list, however I think
> > this is more python-specific. I'm having trouble setting up distutils
> > to use MinGW instead of Visual Studio when building a module. Even tho
> > I've just uninstalled VS, and cleared out any leftover VS environment
> > variables, distutils keeps wanting to use it.
>
> > The steps I took:
>
> > Fresh installation of Python 3.1.1
> > Successfully installed MinGW, added to the path variable (gcc in
> > command prompt works)
> > Successfully installed Cython, imports from Cython in Python work.
> > Added a distutils.cfg file in \Python31\Lib\distutils\ directory with:
>
> > [build]
> > compiler=mingw32
>
> > (also tried adding [build_ext] compiler=mingw32)
>
> > There's a demo setup.py module that came with Cython, I tried the
> > following commands:
>
> > ----------------------------------------------------
>
> > > python setup.py build_ext --inplace
>
> > error: Unable to find vcvarsall.bat
>
> > > python setup.py build
>
> > error: Unable to find vcvarsall.bat
> > ----------------------------------------------------
>
> > I'm having the exact same issue with trying to build the Polygon
> > library via MinGW. In fact, the reason I had installed Visual Studio
> > in the first place was to be able to build the Polygon library, since
> > I was having these errors.
>
> > What do I need to do to make distutils/python use MinGW?
>
> Update:
>
> I installed and tried building with Python 2.6, it calls MinGW when I
> have the distutils.cfg file configured properly (same configuration as
> the Python 3.1.1 one)
>
> But why doesn't it work on a fresh Python 3.1.1 installation as well?
> Is this a bug?

Also tried calling (Python 3.1.1):

----------------------------------------------------
python setup.py build --compiler=mingw32

error: Unable to find vcvarsall.bat
----------------------------------------------------

I've tried using pexports and the dlltool to build new python31.def
and libpython31.a files, and put them in the libs folder. That didn't
work either.

I've also tried adding some print statements in the \distutils\dist.py
file, in the parse_config_files() function, just to see if Python
properly parses the config file. And it does, both Python 2.6 and 3.1
parse the distutils.cfg file properly. Yet something is making python
3 look for the VS/VC compiler instead of MinGW. I'll keep updating on
any progres..



More information about the Python-list mailing list