Well, I wasn't sure exactly what was meant by this so I looked at [trumpet fanfare] the source code ($Config{privlib}/ExtUtils/*) and found one occurrence of "Unable to locate" which was associate with not being able to find the file "perl.h".
This file should be in the $Config{archlib}/CORE directory. MakeMaker not being able to find it probably means that Config.pm is out of tune.
Look at the output from "perl -V" to see what $Config{privlib} and $Config{archlib} should be. The end of this output should list the contents of @INC which should include archlib, privlib, sitearch, and sitelib, in that order. If other directories are listed, then this may be your problem -- check your environment for things like PERL5LIB or PERL5OPT, etc. (see "perldoc perlrun" for more details on these things). Those directories are where the following things are put:
- archlib
- Architecture-specific files that are generated when you build perl (binary files and configuration-specific files like Config.pm and the generated perl.h)
- privlib
- Architecture-independent files that ship with perl (mostly of the *.pm files for standard modules)
- sitearch
- Architecture-specific files that are generated when you add modules (such as the shared libraries that are created for dynamically loadable modules)
- sitelib
- Architecture-independent files that come with modules that you add on (mostly *.pm files)
Then see which version of Config.pm is being use, for example via:
perl -MConfig -e 'print $INC{"Config.pm"}'
You should be using the one in archlib. Then see what Config.pm thinks these values are:
perl -MConfig -de 0
DB<1> x @Config{qw( archlib privlib sitearch sitelib )}
DB<2> q
then go look in $Config{archlib}/CORE where you should find a bunch of *.h files and libperl.a.
I hope that along the way of doing that you'll be able to figure out what is wrong and perhaps how to fix it.
-
tye
(but my friends call me "Tye") |