Then that's your problem ... or at least *one* problem that needs to be fixed.

Could that libperl516.a that's being found be a 32-bit version of libperl516.a ? The error messages from objdump would fit such a scenario.Compare it to the libperl516.a that's on the other machine you mentioned. They should be identical (obviously), right down to the Digest::MD5 signatures, if they're the same builds of Strawberry Perl.

Afterthought: If that libperl516.a is 64-bit, then another possibility is that you've just run a 32-bit version of objdump on it. That would also fit the objdump errors you reported.

Is that what you have ? (I get that SHA1 digest for the distro that I just downloaded - so that part looks fine to me.)If you get a different SHA1 digest for the distro you downloaded then, either you've grabbed a different distro, or you've got a corrupted distro.

SHA1 was correct.
When I checked where objdump was, however, I found it in two places: my separate MSYS installation, and the strawberry one. Once I removed all of the MINGW stuff from the path, strawberry no longer had any trouble compiling XS stuff. Maybe I had a wrong version of MINGW or something; either way, I'm happy it works now. Thanks!