I just installed cygwin to have another platform to test my modules with.
Installation was a mess: I chose the packages that I wanted and then started the installation from internet just to realize later that the ftp-connection went to sleep. So I chose another mirror but had to pick the packages to install again. This happened twice again till I finally had a mirror that had enough throughput (university of Dresden is the winner, btw).
After that some important DLLs weren't there so I had to install some additional packages. Strangely enough, that lead to an upgrade of Perl from 5.6.1-2 to 5.8.0. It didn't keep me bothering for a long time since the installation of another missing package downgraded Perl again to 5.6.1-2. Strange.
Cygwin unintelligently set my home-dir to "/home/Parker Pyne". CPAN.pm wasn't able to deal with it and I never found out where it put the modules it downloaded. CPAN.pm obviously didn't know either because it never found a Makefile.PL for any module it previously downloaded. After some adjustments in /etc/passwd and $CPAN/Config.pm that part worked though.
I was less lucky with the installation of libwww. I kept getting errors about memory that could not be allocated during 'perl Makefile.PL'. Also, Digest::MD5 kept complaining about a version mismatch in a bootstrap parameter. Several re-installations of the MD5 modules didn't fix this.
As for the tests of Mail::Transport::Dbx it turned out that cygwin's gcc doesn't understand a declaration such as
char * func (void) {
All the other gccs (Linux, Sun, FreeBSD and Mac OS X) had no problems with that. But I can live without it.
More serious is the fact that the tests caused a core-dump under cygwin. They all pass but they dump core. Possibly one of the void DESTROY(self)
XSUBs causes that. But then I am not sure whether I can trust this cygwin that causes memory allocation errors on certain occasions. Perhaps it is because that I allocated some memory with safemalloc
but freed it with a mere free
instead of safefree
. At least cygwin helped me to catch this. I suspect it will cause problems on perls with usemymalloc=y.
Anyway, this was just a breathless summary of my cygwin actions. I haven't yet fallen in love with it and I doubt I ever will.