building extension modules under 2.4 / cygwin

J

John Hunter

For the first time, I am trying to compile a matplotlib installer for
win32 / python2.4 under cygwin. I tested this earlier with one of the
pre-release candidates and had no troubles. But when I compile with
python2.4, I get the following error when I try and import my
extension code

the procedure entry point _ctype could not be located in the dynamic
link libary msvcr71.dll

This DLL resides in C:\Windows\System32 on my system

If I edit the distutils/cygwincompiler.py file and remove the line
that add this lib


elif msc_ver == '1310':
# MSVC 7.1
#self.dll_libraries = ['msvcr71']
self.dll_libraries = []

My code compiles, links and runs fine, at least in initial tests

Any reason I shouldn't be doing this?

JDH
 
?

=?ISO-8859-1?Q?=22Martin_v=2E_L=F6wis=22?=

John said:
the procedure entry point _ctype could not be located in the dynamic
link libary msvcr71.dll

This sounds like a bug in the Cygwin linker or header files to me.
I cannot fully check, but it seems to me that msvcr71.dll does not
have a _ctype variable. Instead, the is* functions (which may have
traditionally used _ctype - can't check that, either) are now
implemented through function calls. Can you (e.g. using nm) find
out where the reference to _ctype originates from?

If you remove usage of _ctype in your extension module (e.g. by not
using isupper() and the like), it probably will work fine.

Regards,
Martin
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top