http://www.perlmonks.org?node_id=195896

newrisedesigns has asked for the wisdom of the Perl Monks concerning the following question:

Good Fellow Monks,

I attempted to install the XML::Simple module on a remote machine that I do not have direct access or root access. The machine is a webserver that my company uses through a web hosting provider.

I began by reading tachyon's post concerning installing modules. I telneted into the machine and set the CPAN module to pass the LIB=~/lib argument to Makefile.PL.

Everything went smoothly, until CPAN attempted to install XML::Parser (required by XML::Simple). "make install" returned an error, and CPAN stopped installing.

I attempted to manually install the files through the shell, and was able to pinpoint the problem with XML::Parser::Expat, which is missing/cannot access "expat.h". After looking in Expat.c and Expat.xs, and noticing they both "include <expat.h>", I found a copy of expat.h, and just for the hell of it, I uploaded it, and attempted to see if just including that file would help. No luck.

Here's the error response from "make install" in the Expat subdirectory.

gcc -c -fno-strict-aliasing -I/usr/local/include -O2 -march=i386 -mcp +u=i686 - DVERSION=\"2.31\" -DXS_VERSION=\"2.31\" -fPIC -I/usr/lib/perl5/5.6.1/i +386-linux/ CORE Expat.c Expat.xs:12:19: expat.h: No such file or directory make: *** [Expat.o] Error 1
This is my first attempt at installing a module remotely and any help would be greatly appreciated.

John J Reiser
newrisedesigns.com