It sounds like you either haven't obtained the B:: module, or there was
a compilation problem. You can try to get your current server up and
running
by commenting out the PerlModule B:: ... references, then try starting it
up.
Check on the Perl and Apache web sites (www.perl.org, www.apache.org) for
information
about properly incorporating/using modules with Apache and mod_perl. The
perl site
has PerlModules available for download if you need the code.
Hope this helps,
Laurie
Laurie Knox
ATT - NETAC
[EMAIL PROTECTED]
-Original Message-
From: Gilberto Diaz [mailto:[EMAIL PROTECTED]]
Sent: Thursday, October 04, 2001 4:55 PM
To: [EMAIL PROTECTED]
Subject: shared libraries
Hello everybody
I'm triying to start a mod_perl apache in a Sun enterprise 450 with
solaris 2.6. Everything compile very well, but when I try to start the
server
the following error message is displayed.
**
cronos:/usr/local/apache/bin# ./apachectl start
Syntax error on line 72 of /usr/local/apache/conf/httpd.conf:
Can't load '/usr/local/lib/perl5/5.6.1/sun4-solaris/auto/B/B.so' for module
B: ld.so.1: /usr/local/apache/bin/httpd: fatal: relocation error: file
/usr/local/lib/perl5/5.6.1/sun4-solaris/auto/B/B.so: symbol main: referenced
symbol not found at /usr/local/lib/perl5/5.6.1/sun4-solaris/XSLoader.pm line
75.
at /usr/local/lib/perl5/5.6.1/sun4-solaris/B.pm line 284
Compilation failed in require at
/usr/local/lib/perl5/5.6.1/sun4-solaris/B/Terse.pm line 3.
BEGIN failed--compilation aborted at
/usr/local/lib/perl5/5.6.1/sun4-solaris/B/Terse.pm line 4.
Compilation failed in require at (eval 3) line 3.
./apachectl start: httpd could not be started
*
I have followed this set of instruction to compile everything
a. Unpack the apache and mod_perl distributions:
gunzip apache_1.3.14.tar.gz
tar -xvf apache_1.3.14.tar
gunzip mod_perl-1.24_01.tar.gz
tar -xvf mod_perl-1.24_01.tar
b. Using the perl version 5.6.0 to compile into apache:
cd mod_perl-1.24_01
/path/to/perl5.6.0 Makefile.PL \
APACHE_SRC=../apache_1.3.14/src \
USE_APACI=1 \
EVERYTHING=1 \
DO_HTTPD=1
make
make install
cd ../apache_1.3.14/src
configure \
--prefix=/path/to/install/of/www \
--activate-module=src/modules/perl/libperl.a \
--enable-module=unique_id \
--enable-module=info
make
make install
Editing httpd.conf (Apache/mod_perl installations only):
Set these values in httpd.conf in addition to other normal configuration
settings. NOTE: This is for Apache/mod_perl installations only. If you
choose not to take advantage of this configuration, edit your httpd.conf
in
the usual manner.
# Do NOT adjust MaxRequestsPerChild or ExcessRequestsPerChild!
MaxRequestsPerChild 50
ExcessRequestsPerChild 1
ExtendedStatus On
# Do NOT set these next 4 settings too low, or too high or
performance will suffer
# Adjust according to hardware capabilities
MinSpareServers 5
MaxSpareServers 200
StartServers20
MaxClients 256
PerlTaintCheck Off
PerlWarn Off
# Do NOT turn PerlFreshRestart On
PerlFreshRestart Off
PerlModule B::Terse
PerlModule B::LexInfo
PerlModule B::Deparse
PerlPassEnv TERM EDITOR NOCHANCE USER PERL5LIB
PerlSetEnv KeyForPerlSetEnv OK
PerlSetVar KeyForPerlSetVar OK
# This sets @INC for the applications modules
PerlRequire lib/perl/startup.pl
Alias /perl/ /path/to/server_root/lib/perl/
Location /perl
SetHandler perl-script
PerlHandler Apache::Registry::handler
PerlInitHandler Apache::StatINC
Options +ExecCGI
PerlSendHeader On
/Location
Location /server-info
order deny,allow
deny from all
allow from add.your.ip.here
SetHandler server info
/Location
Location /server-status
order deny,allow
deny from all
allow from add.your.ip.here
SetHandler server status
/Location
Location /perl-status
order deny,allow
deny from all
allow from add.your.ip.here
PerlSetVar StatusOptionsAll