In XML::LibXML and XML::LibXSLT we share memory allocation code by simply copying the perl-mm.c files between the two projects (yes this is naive, but it works). This works fine on all OSes except Mac OSX, apparently, where it complains about multiple definitions.
So I tried making the memory allocation code external (this'll work no problem I thought to myself!). But it doesn't like that either because it can't find the code now. Gah!
So has anyone got any idea how I might fix this?
That sounds like what I ran into yesterday (Score:3, Informative)
Does that sound like what you were running into? And does my approach seem Wrong? I don't do a lot of C or XS
Reply to This
Re:That sounds like what I ran into yesterday (Score:2)
Re:That sounds like what I ran into yesterday (Score:1)
sky
Re:That sounds like what I ran into yesterday (Score:1)
Kill, kill them all (Score:1)
The symbol leaks over when LibXSLT.pm uses LibXML and it just magically works out.
Re:Kill, kill them all (Score:2)
dyld:
_PmmSvNode
Which is one of the functions.
(and yes, XML::LibXML is loaded before XML::LibXSLT is bootstrapped).
Re:Kill, kill them all (Score:1)
Looking at the output of perl -V for both perls their linker flags do differ, which could explain it:
Linker and Libraries: ld='cc', ldflags =''
perl5.8.0
The Dynamic Linking linker options
lddlflagsallare the same for both perls, so I suspect it's the differingldflagsthat are letting iRe:Kill, kill them all (Score:1)