#11 Failure in building

closed-fixed
nobody
None
5
2008-03-09
2007-12-05
Anonymous
No

Hi,

I downloaded smolder-1.2-src.tar.gz on a Debian machine
and tried to install with ./bin/smolder_build --no-mysql

The Perl Modules seemed to have been built fine, after
I installed the Debian packages 'libgd2-xpm-devel' and
'libssl-dev'.

But when trying to buid Apache I got:

************************************************

Building Apache

************************************************

Calling './configure --prefix=/tmp/smolder/smolder-1.2-src/apache --activate-module=src/modules/perl/libperl.a --disable-shared=perl --enable-module=rewrite --enable-shared=rewrite --enable-module=proxy --enable-shared=proxy --enable-module=mime_magic --enable-shared=mime_magic --enable-module=unique_id --enable-shared=unique_id --enable-module=expires --enable-module=headers --enable-module=so'.
Configuring for Apache, Version 1.3.36
+ using installation path layout: Apache (config.layout)
+ activated perl module (modules/perl/libperl.a)
Creating Makefile
Creating Configuration.apaci in src
Creating Makefile in src
+ configured for Linux platform
+ setting C compiler to gcc
+ setting C pre-processor to gcc -E
+ using "tr [a-z] [A-Z]" to uppercase
+ checking for system header files
+ adding selected modules
o rewrite_module uses ConfigStart/End
disabling DBM support for mod_rewrite
(perhaps you need to add -ldbm, -lndbm or -lgdbm to EXTRA_LIBS)
o perl_module uses ConfigStart/End
+ mod_perl build type: OBJ
+ setting up mod_perl build environment
+ id: mod_perl/1.29
+ id: Perl/v5.8.8 (linux) [/usr/bin/perl]
+ adjusting Apache build environment
+ enabling Perl support for SSI (mod_include)
+ using system Expat
+ using -ldl for vendor DSO support
+ checking sizeof various data types
+ doing sanity check on compiler and options
** A test compilation with your Makefile configuration
** failed. The below error output from the compilation
** test will give you an idea what is failing. Note that
** Apache requires an ANSI C Compiler, such as gcc.

======== Error Output for sanity check ========
cd ..; gcc -DLINUX=22 -DHAVE_SET_DUMPABLE -DNO_DBM_REWRITEMAP -DMOD_PERL -DUSE_PERL_SSI -D_REENTRANT -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DUSE_HSREGEX `./apaci` -I. -I/usr/lib/perl/5.8/CORE -o helpers/dummy helpers/dummy.c -lm -lcrypt -Wl,-E -L/usr/local/lib /usr/lib/perl/5.8/auto/DynaLoader/DynaLoader.a -L/usr/lib/perl/5.8/CORE -lperl -ldl -lm -lpthread -lc -lcrypt -lexpat -ldl
/usr/bin/ld: cannot find -lperl
collect2: ld returned 1 exit status
make: *** [dummy] Error 1
============= End of Error Report =============

Aborting!
Apache configure failed: 256 at /tmp/smolder/smolder-1.2-src/lib/Smolder/Platform.pm line 867.
bernhard@fumarat:/tmp/smolder/smolder-1.2-src 539$

Some more info on my setup:

bernhard@fumarat:/tmp/smolder 547$ which perl
/usr/bin/perl
bernhard@fumarat:/tmp/smolder 548$ perl -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
Platform:
osname=linux, osvers=2.6.22-3-amd64, archname=i486-linux-gnu-thread-multi
uname='linux deneb 2.6.22-3-amd64 #1 smp thu oct 11 15:23:23 utc 2007 i686 gnulinux '
config_args='-Dusethreads -Duselargefiles -Dccflags=-DDEBIAN -Dcccdlflags=-fPIC -Darchname=i486-linux-gnu -Dprefix=/usr -Dprivlib=/usr/share/perl/5.8 -Darchlib=/usr/lib/perl/5.8 -Dvendorprefix=/usr -Dvendorlib=/usr/share/perl5 -Dvendorarch=/usr/lib/perl5 -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl/5.8.8 -Dsitearch=/usr/local/lib/perl/5.8.8 -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dsiteman1dir=/usr/local/man/man1 -Dsiteman3dir=/usr/local/man/man3 -Dman1ext=1 -Dman3ext=3perl -Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh -Uusesfio -Uusenm -Duseshrplib -Dlibperl=libperl.so.5.8.8 -Dd_dosuid -des'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O2',
cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include'
ccversion='', gccversion='4.1.2 20061115 (prerelease) (Debian 4.1.1-21)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='cc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt
perllibs=-ldl -lm -lpthread -lc -lcrypt
libc=/lib/libc-2.3.6.so, so=so, useshrplib=true, libperl=libperl.so.5.8.8
gnulibc_version='2.3.6'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'

Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP THREADS_HAVE_PIDS USE_ITHREADS
USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
Built under linux
Compiled at Nov 5 2007 06:11:48
@INC:
/etc/perl
/usr/local/lib/perl/5.8.8
/usr/local/share/perl/5.8.8
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.8
/usr/share/perl/5.8
/usr/local/lib/site_perl
.
bernhard@fumarat:/tmp/smolder 549$ ldd /usr/bin/perl
linux-gate.so.1 => (0xffffe000)
libdl.so.2 => /lib/tls/libdl.so.2 (0xb7ed8000)
libm.so.6 => /lib/tls/libm.so.6 (0xb7eb3000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7ea1000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7d6f000)
libcrypt.so.1 => /lib/tls/libcrypt.so.1 (0xb7d41000)
/lib/ld-linux.so.2 (0xb7eef000)
bernhard@fumarat:/tmp/smolder 550$ cat /etc/deb
debconf.conf debian_version debtags/
bernhard@fumarat:/tmp/smolder 550$ cat /etc/debian_version
4.0
bernhard@fumarat:/tmp/smolder 551$ ls -l /usr/lib/ | grep perl
lrwxrwxrwx 1 root root 16 2007-11-21 11:23 libperl.so.5.8 -> libperl.so.5.8.8
-rw-r--r-- 1 root root 1153524 2007-11-05 07:27 libperl.so.5.8.8
lrwxrwxrwx 1 root root 27 2007-02-12 15:14 libsvn_swig_perl-1.so.1 -> libsvn_swig_perl-1.so.1.0.0
-rw-r--r-- 1 root root 31064 2006-11-10 19:23 libsvn_swig_perl-1.so.1.0.0
drwxr-xr-x 3 root root 4096 2007-11-21 11:23 perl
drwxr-xr-x 24 root root 4096 2007-06-12 16:20 perl5
bernhard@fumarat:/tmp/smolder 552$

Best regards,

Bernhard

Bernhard.Schmalhofer@gmx.de

Discussion

  • Michael Peters
    Michael Peters
    2007-12-15

    Logged In: YES
    user_id=1387047
    Originator: NO

    Sorry I took so long in getting to this. Just got a new baby!

    > The Perl Modules seemed to have been built fine, after
    > I installed the Debian packages 'libgd2-xpm-devel' and
    > 'libssl-dev'.

    I looks like Debian needs different detection of libgd. What's the name of the file that's installed with libgd2-xpm-devel? libgd2.so?

    As for the libssl-dev, do you know which part of the build needed libssl-dev?

    > /usr/bin/ld: cannot find -lperl
    > collect2: ld returned 1 exit status
    > make: *** [dummy] Error 1

    Seems that Debian does not install libperl even though perl exists. I'll add a check for this to svn that will appear in 1.3. Just let me know the details about the other lib checks needed and I'll make sure that gets into 1.3 as well.

     
  • Michael Peters
    Michael Peters
    2007-12-15

    Logged In: YES
    user_id=1387047
    Originator: NO

    Also, is your libperl.so and perl.h located in $Config{archlib}/CORE?

     
  • Michael Peters
    Michael Peters
    2008-03-09

    • status: open --> closed-fixed
     
  • Michael Peters
    Michael Peters
    2008-03-09

    Logged In: YES
    user_id=1387047
    Originator: NO

    Should be fixed now with the changes to use Devel::CheckLib