That file (dl_win32.xs) does NOT exists on my system, after a bit of WEB searching I find no definite answers.

I have found one, it looks old (A warm day in June, 1995), I did reluctantly place it in the Audio::TagLib build directory without hopes, fortunately I was not let down, it didn't help!
Reluctant because I think/suspect this has been added to Strawberry Perl (or Perl it's self).

If I am understanding correctly, this loads dll's like MSVCRT, One that I suspect that may be causing these issues.

I obliviously don't have the skills to debug this without some assistance.

I created copies (in the same directory) of the installed libtag.dll.a and libtag_c.dll.a named libtag.a and libtag_c.a.
I then bypass all the crud in the Makefile.PL that the author provided by using this Makefile.PL:

(Naturally, those hardcoded paths need to change for other boxes.)
Then, assuming we need to build with g++ instead of gcc, I run perl Makefile.PL CC=g++That proceeds ok, but when I run dmake I get hammered with:

which means what ? ... that the file is being parsed as a C file instead of a C++ file ? ... but afaict there has been no invocation of gcc - only g++ has been invoked.I'm probably not ready for C++ and (God willing), I hope I never bloody-well am.

When I build taglib, I find that there's also a libtag_c.dll and libtag_c.dll.a produced - which, I assume, are the C versions of the library. It's a pity that Audio::TagLib doesn't build against that C library instead.

Rob, apeitem.h is part of Taglib and should be in: Taglib-1.7.2/Include/TaglibIf you were to open TagLib-1.7.2/Include/TagLib/TagLib.h and comment out the "_Pragma(...)" on line 34, you'll get further.

If I am understanding correctly Audio::TagLib builds a Library as well, it is called TagLib.dll (in Win, or .so in *nix) that is linked with Taglib's libtag.a. but I don't know FOR SURE! for I have yet to see it build anything, other then an attempt to build TagLib.o. out of TagLib.c (an XS created file) and that fails.