H
hamidrezah
Dear Perl experts:
I am trying to install Algorithm::Combinatorics locally on a UNIX
system without root access. The module or at least portions of it are
written in C. I have the following cc available:
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --
infodir=/usr/share/info --enable-shared --enable-threads=posix --
disable-checking --with-system-zlib --enable-__cxa_atexit --disable-
libunwind-exceptions --enable-java-awt=gtk --host=x86_64-redhat-linux
Thread model: posix
gcc version 3.4.6 20060404 (Red Hat 3.4.6-9)
So "perl Makefile.PL PREFIX=/home/mydir" works. "make" works well too.
But during "make test" I get the following errors:
PERL_DL_NONLAZY=1 .../perl/5.8.8/bin/perl "-MExtUtils::Command::MM" "-
e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_load............................
# Failed test 'use Algorithm::Combinatorics;'
t/00_load............................NOK 1# in t/00_load.t at line
6.
# Tried to use 'Algorithm::Combinatorics'.
# Error: Can't load '.../Algorithm-Combinatorics-0.25/blib/arch/
auto/Algorithm/Combinatorics/Combinatorics.so' for module
Algorithm::Combinatorics: .../Algorithm-Combinatorics 0.25/blib/arch/
auto/Algorithm/Combinatorics/Combinatorics.so: cannot open shared
object file: No such file or directory at .../perl/5.8.8/lib/5.8.8/
i686-linux-thread-multi/DynaLoader.pm line 230.
# at (eval 3) line 2
# Compilation failed in require at (eval 3) line 2.
# BEGIN failed--compilation aborted at t/00_load.t line 6.
# Looks like you failed 1 test of 1.
Then I chose the static linking "perl Makefile.PL PREFIX=/home/mydir
LINKTYPE=static". It worked well and "make" finished normally. Then
again "make test" fails giving the following errors:
perlmain.c: In function `xs_init':
perlmain.c:122: warning: passing arg 4 of `Perl_newXS' discards
qualifiers from pointer target type
perlmain.c:127: warning: passing arg 4 of `Perl_newXS' discards
qualifiers from pointer target type
/usr/bin/ld: warning: i386 architecture of input file `.../perl/5.8.8/
lib/5.8.8/i686-linux-thread-multi/CORE/libperl.a(perl.o)' is
incompatible with i386:x86-64 output
/usr/bin/ld: warning: i386 architecture of input file `.../perl/5.8.8/
lib/5.8.8/i686-linux-thread-multi/CORE/libperl.a(gv.o)' is
incompatible with i386:x86-64 output
..../perl/5.8.8/lib/5.8.8/i686-linux-thread-multi/CORE/libperl.a
(perlio.o)(.text+0x4a6c): In function `PerlIOMmap_map':
: undefined reference to `__divdi3'
collect2: ld returned 1 exit status
make[1]: *** [perl] Error 1
Can anyone please help what could be possibly wrong??
Thanks in advance.
Hrh.
I am trying to install Algorithm::Combinatorics locally on a UNIX
system without root access. The module or at least portions of it are
written in C. I have the following cc available:
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --
infodir=/usr/share/info --enable-shared --enable-threads=posix --
disable-checking --with-system-zlib --enable-__cxa_atexit --disable-
libunwind-exceptions --enable-java-awt=gtk --host=x86_64-redhat-linux
Thread model: posix
gcc version 3.4.6 20060404 (Red Hat 3.4.6-9)
So "perl Makefile.PL PREFIX=/home/mydir" works. "make" works well too.
But during "make test" I get the following errors:
PERL_DL_NONLAZY=1 .../perl/5.8.8/bin/perl "-MExtUtils::Command::MM" "-
e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_load............................
# Failed test 'use Algorithm::Combinatorics;'
t/00_load............................NOK 1# in t/00_load.t at line
6.
# Tried to use 'Algorithm::Combinatorics'.
# Error: Can't load '.../Algorithm-Combinatorics-0.25/blib/arch/
auto/Algorithm/Combinatorics/Combinatorics.so' for module
Algorithm::Combinatorics: .../Algorithm-Combinatorics 0.25/blib/arch/
auto/Algorithm/Combinatorics/Combinatorics.so: cannot open shared
object file: No such file or directory at .../perl/5.8.8/lib/5.8.8/
i686-linux-thread-multi/DynaLoader.pm line 230.
# at (eval 3) line 2
# Compilation failed in require at (eval 3) line 2.
# BEGIN failed--compilation aborted at t/00_load.t line 6.
# Looks like you failed 1 test of 1.
Then I chose the static linking "perl Makefile.PL PREFIX=/home/mydir
LINKTYPE=static". It worked well and "make" finished normally. Then
again "make test" fails giving the following errors:
perlmain.c: In function `xs_init':
perlmain.c:122: warning: passing arg 4 of `Perl_newXS' discards
qualifiers from pointer target type
perlmain.c:127: warning: passing arg 4 of `Perl_newXS' discards
qualifiers from pointer target type
/usr/bin/ld: warning: i386 architecture of input file `.../perl/5.8.8/
lib/5.8.8/i686-linux-thread-multi/CORE/libperl.a(perl.o)' is
incompatible with i386:x86-64 output
/usr/bin/ld: warning: i386 architecture of input file `.../perl/5.8.8/
lib/5.8.8/i686-linux-thread-multi/CORE/libperl.a(gv.o)' is
incompatible with i386:x86-64 output
..../perl/5.8.8/lib/5.8.8/i686-linux-thread-multi/CORE/libperl.a
(perlio.o)(.text+0x4a6c): In function `PerlIOMmap_map':
: undefined reference to `__divdi3'
collect2: ld returned 1 exit status
make[1]: *** [perl] Error 1
Can anyone please help what could be possibly wrong??
Thanks in advance.
Hrh.