This is an excellent resource for a POSIX newbie like me, because recently I've been trying to compile libmcrypt and its python-mcrypt extension for win32 with little success.
I have the Cygwin install, and libmcrypt compiles and installs perfectly *IFF* I use default (i.e. Cygwin-dependent) settings during ./configure. That's if I just use "./configure" without any extra switches. When I try to follow your recipe for the configure part, the subsequent "make" step fails on the first source file with the message "unknown definition: '_rpl_malloc'." I say that I "try" to follow because I am not completely sure what the "mingw_libs" dir is supposed to contain. Is it just an independent copy of the "C:/mingw/lib" dir, or is it the root MinGW install dir, i.e. "C:/MinGW" ?
My second question is: let's say that I do build libmcrypt successfully without the cygwin dependencies using ./configure; make; make install like you say here. What's the next step in distutils? It appears that cygwin creates ".deps" and ".lib" subdirs throughout the project when it compiles. Those dirs contain a handful of .dll and .a files, and some others. I assume these are necessary for distutils to create the final .dll and .lib for distribution, but how do I do that part?
p.s. I do not have to create the libpython25.a file because I am using a binary install of Python 2.5 on WinXP, and 2.5 already ships with the lib.
Excellent post - please clarify "Build non-Python" part
I have the Cygwin install, and libmcrypt compiles and installs perfectly *IFF* I use default (i.e. Cygwin-dependent) settings during ./configure. That's if I just use "./configure" without any extra switches. When I try to follow your recipe for the configure part, the subsequent "make" step fails on the first source file with the message "unknown definition: '_rpl_malloc'." I say that I "try" to follow because I am not completely sure what the "mingw_libs" dir is supposed to contain. Is it just an independent copy of the "C:/mingw/lib" dir, or is it the root MinGW install dir, i.e. "C:/MinGW" ?
My second question is: let's say that I do build libmcrypt successfully without the cygwin dependencies using ./configure; make; make install like you say here. What's the next step in distutils? It appears that cygwin creates ".deps" and ".lib" subdirs throughout the project when it compiles. Those dirs contain a handful of .dll and .a files, and some others. I assume these are necessary for distutils to create the final .dll and .lib for distribution, but how do I do that part?
p.s. I do not have to create the libpython25.a file because I am using a binary install of Python 2.5 on WinXP, and 2.5 already ships with the lib.
Your help is much appreciated,
Basil