Craig Shelley wrote:
Hi All,
It looked like the Debian install problems were back.
[EMAIL PROTECTED]:~/temp/modperl-2.0$ perl Makefile.PL
* WARNING *
Your Perl is configured to link against libgdbm,
but libgdbm.so was not found.
You could just symlink it to /usr/lib/libgdbm.so.1.7.3
You probably want to fix this one, at least so it won't get on the way.
* WARNING *
!!! Unable to open
/mnt/general/temp/modperl-2.0/../../home/craig/temp/mod_perl-1.99_09/ap_release.h: No
such file or directory
!!! Unable to determine server version, aborting.
!!! Please specify MP_APXS or MP_AP_PREFIX.
I thought this was a bit strange,
look at the path where it is trying to find my apache include dir.
It should be looking in /usr/include/apache2/
Anyway, I do what it says...
[EMAIL PROTECTED]:~/temp/modperl-2.0$ perl Makefile.PL MP_AP_PREFIX=/usr/include/apache2/
Reading Makefile.PL args from @ARGV
MP_AP_PREFIX = /usr/include/apache2
* WARNING *
Your Perl is configured to link against libgdbm,
but libgdbm.so was not found.
You could just symlink it to /usr/lib/libgdbm.so.1.7.3
* WARNING *
!!! invalid MP_AP_PREFIX: include/ directory not found in /usr/include/apache2
Looked at first like I would have to frig the script...
After analysing Build.pm, I noticed it was
using a load of crap data from my old installation in
/usr/local/lib/perl/5.8.0/Apache/BuildConfig.pm
So all the problems you listed above were caused by an old
Apache/BuildConfig.pm, so we are in this code in Apache/Build.pm:
if (-e "lib/$bpm" and (stat _)[9] > $bpm_mtime) {
#reload if Makefile.PL has regenerated
unshift @INC, 'lib';
delete $INC{$bpm};
eval { require Apache::BuildConfig; };
shift @INC;
}
else {
eval { require Apache::BuildConfig; };
}
and the last eval is the one that picked the old config. I suppose we need to
prompt users before we do that. Makes sense?
After deleting this file, i had to delete what i had got from cvs, and redownload.
The second time round I ran into more problems...
[EMAIL PROTECTED]:~/temp/modperl-2.0$ perl Makefile.PL
* WARNING *
Your Perl is configured to link against libgdbm,
but libgdbm.so was not found.
You could just symlink it to /usr/lib/libgdbm.so.1.7.3
* WARNING *
!!! Unable to determine server version, aborting.
!!! Please specify MP_APXS or MP_AP_PREFIX.
Ok, so i specify the MP_AP_PREFIX option, since that was mentioned in the INSTALL file too.
I updated the install docs, to explain that MP_AP_PREFIX can be used only when
everything is installed under one tree. I will fix the INSTALL file as well.
Of course MP_APXS is the best option (since it can provide all the information
about Apache and APR), but it's still not available on win32 (Randy has a
working prototype, but one has to download it separately from Apache). And if
you haven't installed Apache yet (but built it), you can't use MP_APXS.
[EMAIL PROTECTED]:~/temp/modperl-2.0$ perl Makefile.PL MP_AP_PREFIX=/usr/include/apache2/
Reading Makefile.PL args from @ARGV
MP_AP_PREFIX = /usr/include/apache2
* WARNING *
Your Perl is configured to link against libgdbm,
but libgdbm.so was not found.
You could just symlink it to /usr/lib/libgdbm.so.1.7.3
* WARNING *
!!! invalid MP_AP_PREFIX: include/ directory not found in /usr/include/apache2
Ah that problem again...
SOLUTION:
perl Makefile.PL MP_APXS=/usr/bin/apxs2
All problems went away.
Problems occur in debian if the MP_AP_PREFIX is used because it expects a /include dir to be present.
but if the MP_APXS option is not used, the MP_AP_PREFIX is one of the tempting recommendations by the script.
The question here is, should the script have detected /usr/bin/apxs2 ?
How could possibly it do that? We shouldn't have any hardcoded paths, since if
we guess and you have more t