Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^5: Audio::TagLib and Strawberry Perl - New Details

by syphilis (Canon)
on Aug 21, 2012 at 06:41 UTC ( #988597=note: print w/ replies, xml ) Need Help??


in reply to Re^4: Audio::TagLib and Strawberry Perl - New Details
in thread Audio::TagLib and Strawberry Perl

Yeah, got it.
I just had to append "/taglib" to the "-IC:/MinGW/msys/1.0/local/include" argument I had supplied in the Makefile.PL.

Unfortunately there's now a write() function in ostream that's getting #define'd to "PerlIO_write" ... which breaks the build.
Have to see if I can undef something somewhere and fix that.

Cheers,
Rob

Update: #undef write (and #undef read), then change a "char**" declaration in iconv_wrap.h to "const char**" get me to:

c:\mingw\bin\../lib/gcc/mingw32/4.5.2/include/c++/streambuf:569:7: err +or: expected ')' before '*' token
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.


Comment on Re^5: Audio::TagLib and Strawberry Perl - New Details
Download Code
Re^6: Audio::TagLib and Strawberry Perl - New Details
by BrowserUk (Pope) on Aug 21, 2012 at 07:05 UTC

    Just preceding that call (and any others) with #undef write would get you past that problem.

    Of course, it may well open you up to another bunch of similar insanities.

    Whichever lazy bugger thought that redefining half the C-runtime to PerlIO_whatever was a good idea should be taken out and shot.


    With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

    The start of some sanity?

      Whichever lazy bugger thought that redefining half the C-runtime to PerlIO_whatever was a good idea should be taken out and shot.

      You tell'em BuKake

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://988597]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (4)
As of 2014-10-23 03:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (123 votes), past polls