How can I tell CPAN to give Makefile.PL one specific argument in one specific installation?
Specifically. I want to install XML::LibXML, and apt-get installed the library to /usr/lib/libxml2.so.2.6.32. Makefile.PL has problems with that and tells me:
using fallback values for LIBS and INC
options:
LIBS='-L/usr/local/lib -L/usr/lib -lxml2 -lm'
INC='-I/usr/local/include -I/usr/include'
If this is wrong, Re-run as:
$ /usr/bin/perl Makefile.PL LIBS='-L/path/to/lib' INC='-I/path/to/include'
looking for -lxml2... no
looking for -llibxml2... no
libxml2 not found
Try setting LIBS and INC values on the command line
Or get libxml2 from
http://xmlsoft.org/
I know where the libxml2 is, but I don’t know how to tell it to the Makefile.PL.
edit: When I do dpkg -L libxml2 (it’s a debian), I see
/.
/usr
/usr/lib
/usr/lib/libxml2.so.2.6.32
/usr/share
/usr/share/doc
/usr/share/doc/libxml2
/usr/share/doc/libxml2/AUTHORS
/usr/share/doc/libxml2/changelog.Debian.gz
/usr/share/doc/libxml2/copyright
/usr/share/doc/libxml2/README
/usr/share/doc/libxml2/README.Debian
/usr/share/doc/libxml2/NEWS.gz
/usr/share/doc/libxml2/changelog.gz
/usr/share/doc/libxml2/TODO.gz
/usr/lib/libxml2.so.2
I am not a root on that machine and I can’t make symlink in /usr/lib or repair it.
The Makefile.PL is looking for
libxml2.so. That’s usually a symlink to your actual libxml2 shared object, likelibxml2.so.2.6.32. If for some reason this symlink isn’t around because you deleted it, your vendor didn’t ship it with its libxml2 header package (e.g.libxml2-devon Debian/Ubuntu/etc), you will need to create it yourself.You don’t need to pass any specific argument to Makefile.PL here. It’s already looking in the right places. The things it’s looking for simply aren’t there.