James Keenan via RT wrote:
> Cosimo Streppone wrote:
>> # New Ticket Created by  Cosimo Streppone 
>> # Please include the string:  [perl #47127]
>> # in the subject line of all future correspondence about this issue. 
>> # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=47127 >
> 
>> Just found out this test failure.
>> After some research, I think this is caused by the
>> different configurations of my system's underlying /usr/bin/perl,
>> where $Config{libs} includes '-lgdbm', and parrot Configure.pl result,
>> which correctly finds that `has_gdbm=0', so no '-lgdbm' should be used.
>
> [...]
> Which version of Perl are you using?  Which OS?  Can you post more 
> complete test failure reports?

System is Linux Ubuntu 7.04.
Perl is that installed by Ubuntu packages (full perl -V output attached
later).
Test failure output is:

--------------8<----------------------------
[EMAIL PROTECTED]:~/Desktop/src/parrot$ TEST_VERBOSE=1 perl
t/configure/111-auto_gcc-01.t
1..12
ok 1 - use config::init::defaults;
ok 2 - use config::auto::gcc;
ok 3 - init::defaults constructor returned defined value
ok 4 - The object isa init::defaults
ok 5 - init::defaults has description
ok 6 - init::defaults runstep() returned defined value
ok 7 - auto::gcc constructor returned defined value
ok 8 - The object isa auto::gcc
ok 9 - auto::gcc has description
Linker failed (see test.ldo) at lib/Parrot/Configure/Step.pm line 525
        Parrot::Configure::Step::cc_build() called at config/auto/gcc.pm
line 42
        auto::gcc::_probe_for_gcc() called at config/auto/gcc.pm line 35
        auto::gcc::runstep('auto::gcc=HASH(0x83d9194)',
'Parrot::Configure=HASH(0x82e7a04)') called at
t/configure/111-auto_gcc-01.t line 40
# Looks like you planned 12 tests but only ran 9.
# Looks like your test died just after 9.
[EMAIL PROTECTED]:~/Desktop/src/parrot$
--------------8<----------------------------


While ubuntu perl configuration is the following
('has_gdbm'=1, 'libs' include '-lgdbm'):

--------------8<----------------------------
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
    osname=linux, osvers=2.6.15.7, archname=i486-linux-gnu-thread-multi
    uname='linux rothera 2.6.15.7 #1 smp sat sep 30 10:21:42 utc 2006
i686 gnulinux '
    config_args='-Dusethreads -Duselargefiles -Dccflags=-DDEBIAN
-Dcccdlflags=-fPIC -Darchname=i486-linux-gnu -Dprefix=/usr
    [...]
-Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh -Uusesfio -Uusenm
-Duseshrplib -Dlibperl=libperl.so.5.8.8 -Dd_dosuid -des'
    [...]
  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 (Ubuntu 4.1.2-0ubuntu4)',
    [...]
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.5.so, so=so, useshrplib=true, libperl=libperl.so.5.8.8
    gnulibc_version='2.5'
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 Mar  6 2007 01:40:14
  @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
    .

> Only tangentially.  Originally, in that test file I was running 
> auto::gcc in addition to init::defaults as preparation for running tests 
> of inter::shlibs.  chromatic led me to recognize that auto::gcc was 
> superfluous in this instance.

Correct me if I'm wrong.
I believe the problem happens when you run auto::gcc tests
right after init::defaults, just because init::defaults
sets current 'libs' to the underlying perl's $Config{libs},
which has has_gdbm, while the system really has no libgdbm-dev
package installed.

> You should note that the tests in t/configure/ are not tests of Parrot 
> *per se*.  [...]

Thanks for explaining.

-- 
Cosimo

Reply via email to