Python distutils build problems with MinGW

casevh casevh at gmail.com
Mon Feb 1 17:44:46 CET 2010


On Feb 1, 8:31 am, Andrej Mitrovic <andrej.mitrov... at gmail.com> wrote:
> 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..- Hide quoted text -
>
> - Show quoted text -

I think this is http://bugs.python.org/issue6377.

I applied the patch to my local copy of Python 3.1 and it seems to
work.

casevh



More information about the Python-list mailing list