Issue 15315: Can't build Python extension with mingw32 on Windows (original) (raw)

Created on 2012-07-10 04:52 by cmcqueen1975, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
log.txt adityaatluri,2013-06-14 08:38
Messages (10)
msg165159 - (view) Author: Craig McQueen (cmcqueen1975) Date: 2012-07-10 04:52
I'm trying this with my 'cobs' Python package: c:\Python33\python.exe setup.py build --compiler=mingw32 bdist_msi With Python 3.3 beta, it fails with an exception: ValueError: Unknown MS Compiler version 1600 It works with Python 3.2.
msg165160 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2012-07-10 05:07
New changeset eee92b9ac4ad by Martin v. Löwis in branch 'default': Issue #15315: Support VS 2010 in distutils cygwincompiler. http://hg.python.org/cpython/rev/eee92b9ac4ad
msg165161 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2012-07-10 05:08
This should now be fixed in the repository. It would be good if you could manually apply the change to your installation, and report whether it works.
msg165174 - (view) Author: Craig McQueen (cmcqueen1975) Date: 2012-07-10 07:54
That's definitely an improvement. It gets further, but on my PC, the compile fails: ... c:/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../../mingw32/bin/ld.exe: cannot find -lmsvcr100 collect2: ld returned 1 exit status error: command 'gcc' failed with exit status 1 I'll have to see if I can get the required library I guess.
msg165176 - (view) Author: Craig McQueen (cmcqueen1975) Date: 2012-07-10 08:12
I downloaded the latest MinGW, and now it tells me: ... c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IC:\Python33\include -IC:\Python33\PC -c python3/src/_cobs_ext.c -o bui ld\temp.win32-3.3\Release\python3\src\_cobs_ext.o cc1.exe: error: unrecognized command line option '-mno-cygwin' error: command 'gcc' failed with exit status 1
msg165177 - (view) Author: Craig McQueen (cmcqueen1975) Date: 2012-07-10 08:17
It sounds as though the option '-mno-cygwin' is related to issue #12641. Does that mean I need to find a version of MinGW that is old enough to support the option '-mno-cygwin', but new enough to include a library for msvcr100?
msg165179 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2012-07-10 09:09
I'm not a Cygwin user myself, so it would be good if you could figure this out somehow. Feel free to ask on Cygwin lists how this is supposed to work. Our requirement is that the resulting pyd needs to link with msvcr100.dll. It may well be that *no* version of Cygwin ever supported this, in which case we should drop Cygwin support from Python 3.3.
msg165212 - (view) Author: Craig McQueen (cmcqueen1975) Date: 2012-07-10 23:48
I've succeeded in building an extension for Python 3.3 (at least, on Windows XP, 32-bit; haven't tried any 64-bit), by the hack of copying libmsvcr100.a from a recent MinGW release (20120426) into an older MinGW release (20101030). I haven't looked at MinGW releases to see if I can find one that supports both the -mno-cygwin option and msvcr100. I guess the best solution for this is to resolve issue #12641 for Python 3.3.
msg191106 - (view) Author: Aditya Atluri (adityaatluri) Date: 2013-06-14 08:38
I have found a hack for the issue. First, install Microsoft Visual C++ 2010 Redistributable Package. Second, copy the msvcr100.dll to C:\Python33\libs. Reason: During compilation, the directory for linking is C:\Python44\libs. Both -lpython and -lmsvcr100 are pointed to the same location. So, they have to be in the same directory. I have another problem here. The log is attached. Is there a change in functions and objects in building extensions in C from 2.7 and 3.3?
msg191115 - (view) Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) * (Python committer) Date: 2013-06-14 10:19
Aditya, python3 changed the API to create modules. See .
History
Date User Action Args
2022-04-11 14:57:32 admin set github: 59520
2021-10-21 09:59:14 iritkatriel set resolution: duplicate -> wont fix
2021-10-20 12:40:56 iritkatriel set status: open -> closedsuperseder: MinGW is unsupported - close all open issues and list them here.resolution: duplicatestage: resolved
2013-08-04 14:24:23 rpetrov set nosy: + rpetrov
2013-06-14 10:19:08 amaury.forgeotdarc set nosy: + amaury.forgeotdarcmessages: +
2013-06-14 08:38:20 adityaatluri set files: + log.txtnosy: + adityaatlurimessages: +
2012-09-11 22:57:40 ezio.melotti set dependencies: + Remove -mno-cygwin from distutilstype: behavior
2012-07-10 23:48:18 cmcqueen1975 set messages: +
2012-07-10 09:09:44 loewis set messages: +
2012-07-10 08:17:19 cmcqueen1975 set messages: +
2012-07-10 08:12:59 cmcqueen1975 set messages: +
2012-07-10 07:54:07 cmcqueen1975 set messages: +
2012-07-10 05:08:22 loewis set nosy: + loewismessages: +
2012-07-10 05:07:33 python-dev set nosy: + python-devmessages: +
2012-07-10 04:52:02 cmcqueen1975 create