in reply to XML::LibXML, Windows, & Camelbox Install Problems

You need to do some Makefile hacking because the existing Perl module for discovering library dependencies (ExtUtils::Liblist::Kid) doesn't work that well on Windows. In all of the Makefiles for XML::LibXML* that are generated when you run perl Makefile.PL, you need to add C:\camelbox\bin\zlib1.dll and C:\camelbox\bin\libxml2.dll to the environment variables LDLOADLIBS and EXTRALIBS. So those environment variables should look something like this when you're done:
EXTRALIBS = C:\camelbox\lib\libmsvcrt.a C:\camelbox\lib\libmoldname.a +C:\camelbox\lib\libkernel32.a C:\camelbox\lib\libuser32.a C:\camelbox +\lib\libgdi32.a C:\camelbox\lib\libwinspool.a C:\camelbox\lib\libcomd +lg32.a C:\camelbox\lib\libadvapi32.a C:\camelbox\lib\libshell32.a C:\ +camelbox\lib\libole32.a C:\camelbox\lib\liboleaut32.a C:\camelbox\lib +\libnetapi32.a C:\camelbox\lib\libuuid.a C:\camelbox\lib\libws2_32.a +C:\camelbox\lib\libmpr.a C:\camelbox\lib\libwinmm.a C:\camelbox\lib\l +ibversion.a C:\camelbox\lib\libodbc32.a C:\camelbox\lib\libodbccp32.a + C:\camelbox\bin\zlib1.dll C:\camelbox\bin\libxml2.dll LDLOADLIBS = C:\camelbox\lib\libmsvcrt.a C:\camelbox\lib\libmoldname.a + C:\camelbox\lib\libkernel32.a C:\camelbox\lib\libuser32.a C:\camelbo +x\lib\libgdi32.a C:\camelbox\lib\libwinspool.a C:\camelbox\lib\libcom +dlg32.a C:\camelbox\lib\libadvapi32.a C:\camelbox\lib\libshell32.a C: +\camelbox\lib\libole32.a C:\camelbox\lib\liboleaut32.a C:\camelbox\li +b\libnetapi32.a C:\camelbox\lib\libuuid.a C:\camelbox\lib\libws2_32.a + C:\camelbox\lib\libmpr.a C:\camelbox\lib\libwinmm.a C:\camelbox\lib\ +libversion.a C:\camelbox\lib\libodbc32.a C:\camelbox\lib\libodbccp32. +a C:\camelbox\bin\zlib1.dll C:\camelbox\bin\libxml2.dll
You can use the 'look' command from within the CPAN shell to download the source to hack it up prior to running 'dmake'. Using the above instructions I was able to get XML::LibXML::Common and XML::LibXML to compile under Camelbox (after installing the other prerequisites of XML::SAX and XML::NamespaceSupport of course).
C:\camelbox\.cpan\build\XML-LibXML-1.69-8uOaSj>perl -e "use XML::LibXM +L; print $XML::LibXML::VERSION . qq(\n);" 1.69 C:\camelbox\.cpan\build\XML-LibXML-1.69-8uOaSj>
Thanks, Brian

Replies are listed 'Best First'.
Re^2: XML::LibXML, Windows, & Camelbox Install Problems
by boblawblah (Scribe) on Feb 17, 2009 at 18:54 UTC
    This worked perfectly! Thank you!
Re^2: XML::LibXML, Windows, & Camelbox Install Problems
by Anonymous Monk on Jul 26, 2009 at 16:37 UTC
    I have found that prepending
    $config{LIBS} = ":nosearch $config{LIBS}";
    stops ExtUtils::Liblist from removing LIBS, seems kind of stupid, bug its easier than hacking Makefile.