FAQ
# New Ticket Created by Rob Dallas
# Please include the string: [perl #20879]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=20879 >


perlbug@perl.org
I apologize in advance if this is the wrong place to post this question.

I am attempting to install Perl 5.8.0 on a Solaris 2.7 machine and 'make'
aborts with the following message:

(snip)
rm -f opmini.c
gcc -L/usr/local/lib -o miniperl \
miniperlmain.o opmini.o libperl.a -lsocket -lnsl -ldl -lm -lc
./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
make: [extra.pods] Error 1 (ignored)
./miniperl -Ilib configpm configpm.tmp
sh mv-if-diff configpm.tmp lib/Config.pm
./miniperl -Ilib lib/lib_pm.PL
Constant(undef) unknown: at lib/File/Basename.pm line 289, at end of line
Compilation failed in require at lib/lib_pm.PL line 2.
BEGIN failed--compilation aborted at lib/lib_pm.PL line 2.
make: *** [lib/lib.pm] Error 255

Here is 'myconfig' content:

Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
Platform:
osname=solaris, osvers=2.7, archname=sun4-solaris
uname='sunos daryl 5.7 generic_106541-19 sun4u sparc sunw,ultra-4 '
config_args='-Dprefix=/home/webland/Personal -Dcc=gcc'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-fno-strict-aliasing -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O',
cppflags='-fno-strict-aliasing -I/usr/local/include'
ccversion='', gccversion='2.95.3 20010315 (release)',
gccosandvers='solaris2.7'
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -L/usr/local/lib '
libpth=/usr/local/lib /usr/lib /usr/ccs/lib
libs=-lsocket -lnsl -ldl -lm -lc
perllibs=-lsocket -lnsl -ldl -lm -lc
libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' -Wl,-E'
cccdlflags='-fPIC', lddlflags=' -Wl,-E -G -L/usr/local/lib'

I have seen the discussion of a patch for Basename.pm and my Basename.pm
appears to be patched, at least in a similar way.
I have also seen the testimonials that says 5.8.0 installs OK on Solaris 2.7.
I have been able to install 5.8.0 with the same tar file on Solaris 2.8
without problem.

Can anyone advise me what is wrong with my system or what I'm doing wrong?

Much Thanks.
Rob Dallas
Canadian Heritage Information Network
rdallas@chin.gc.ca

Search Discussions

  • Dave Mitchell at Feb 20, 2003 at 12:00 am

    On Wed, Feb 12, 2003 at 04:55:27PM -0000, Rob Dallas wrote:
    I am attempting to install Perl 5.8.0 on a Solaris 2.7 machine and 'make'
    aborts with the following message:

    (snip)
    rm -f opmini.c
    gcc -L/usr/local/lib -o miniperl \
    miniperlmain.o opmini.o libperl.a -lsocket -lnsl -ldl -lm -lc
    ./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
    make: [extra.pods] Error 1 (ignored)
    ./miniperl -Ilib configpm configpm.tmp
    sh mv-if-diff configpm.tmp lib/Config.pm
    ./miniperl -Ilib lib/lib_pm.PL
    Constant(undef) unknown: at lib/File/Basename.pm line 289, at end of line
    Compilation failed in require at lib/lib_pm.PL line 2.
    BEGIN failed--compilation aborted at lib/lib_pm.PL line 2. [snip]
    I have seen the discussion of a patch for Basename.pm and my Basename.pm
    appears to be patched, at least in a similar way.
    I have also seen the testimonials that says 5.8.0 installs OK on Solaris 2.7.
    I have been able to install 5.8.0 with the same tar file on Solaris 2.8
    without problem.
    Just to clarify, are you using the Basename.pm file that comes with the
    standard Perl 5.8.0 tarfile, or some other version of this file?

    --
    In England there is a special word which means the last sunshine
    of the summer. That word is "spring".
  • Rob Dallas at Feb 20, 2003 at 2:22 pm
    I am using Basename.pm, asis, from the tar file.

    Rob...
    At 12:00 AM 2/20/2003 +0000, you wrote:
    On Wed, Feb 12, 2003 at 04:55:27PM -0000, Rob Dallas wrote:
    I am attempting to install Perl 5.8.0 on a Solaris 2.7 machine and 'make'
    aborts with the following message:

    (snip)
    rm -f opmini.c
    gcc -L/usr/local/lib -o miniperl \
    miniperlmain.o opmini.o libperl.a -lsocket -lnsl -ldl -lm -lc
    ./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
    make: [extra.pods] Error 1 (ignored)
    ./miniperl -Ilib configpm configpm.tmp
    sh mv-if-diff configpm.tmp lib/Config.pm
    ./miniperl -Ilib lib/lib_pm.PL
    Constant(undef) unknown: at lib/File/Basename.pm line 289, at end of line
    Compilation failed in require at lib/lib_pm.PL line 2.
    BEGIN failed--compilation aborted at lib/lib_pm.PL line 2. [snip]
    I have seen the discussion of a patch for Basename.pm and my Basename.pm
    appears to be patched, at least in a similar way.
    I have also seen the testimonials that says 5.8.0 installs OK on Solaris
    2.7.
    I have been able to install 5.8.0 with the same tar file on Solaris 2.8
    without problem.
    Just to clarify, are you using the Basename.pm file that comes with the
    standard Perl 5.8.0 tarfile, or some other version of this file?

    --
    In England there is a special word which means the last sunshine
    of the summer. That word is "spring".
  • Dave Mitchell at Feb 20, 2003 at 2:52 pm

    On Thu, Feb 20, 2003 at 09:22:39AM -0500, Rob Dallas wrote:
    I am using Basename.pm, asis, from the tar file.
    Could you try the following from the build directory:

    ./miniperl -Ilib -MFile::Basename -e ''

    and let me know if you get the same error.
    Even better, if you do, would it possible for you to produce
    a stripped-down minimum version of lib/File/Basename.pm that still
    exhibits the error?

    Thanks,

    Dave.

    --
    In the 70's we wore flares because we didn't know any better.
    What possible excuse does the current generation have?
  • Dave Mitchell at Feb 20, 2003 at 11:29 pm

    On Thu, Feb 20, 2003 at 05:17:04PM -0500, Rob Dallas wrote:
    When I execute the mimiperl command you suggest I simply get a command
    prompt back with no other messages.
    Hmmm - could you try each of the following in order until you start
    gettting error messages again?

    ./miniperl -Ilib -e 'use File::Basename'
    ./miniperl -Ilib -e 'use File::Basename qw(&basename &dirname)'
    ./miniperl -Ilib -e 'use Config; use File::Basename qw(&basename &dirname)'
    ./miniperl -Ilib lib/lib_pm.PL
    make lib/lib.pm
    make minitest
    make

    --
    Lady Nancy Astor: If you were my husband, I would flavour your coffee
    with poison.
    Churchill: Madam - if I were your husband, I would drink it.
  • Rob Dallas at Feb 21, 2003 at 4:50 pm
    These are the results I got from the commands below.

    Rob....

    daryl:~/Personal>cd src/perl-5.8.0
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib -e 'use File::Basename'
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib -e 'use File::Basename
    qw(&base
    name &dirname)'
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib -e 'use Config; use
    File::Basen
    ame qw(&basename &dirname)'
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib lib/lib_pm.PL
    Extracting lib.pm (with variable substitutions)
    daryl:~/Personal/src/perl-5.8.0>make lib/lib.pm
    make: `lib/lib.pm' is up to date.
    daryl:~/Personal/src/perl-5.8.0>make minitest
    cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm

    You may see some irrelevant test failures if you have been unable
    to build lib/Config.pm or lib/lib.pm.

    cd t && (rm -f perl; /usr/bin/ln -s ../miniperl perl) \
    && ./perl TEST base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t uni/*.t
    </dev/tty
    t/base/cond..........ok
    t/base/if............ok
    t/base/lex...........ok
    t/base/num...........ok
    t/base/pat...........ok
    t/base/rs............ok
    t/base/term..........ok
    t/comp/bproto........ok
    t/comp/cmdopt........ok
    t/comp/colon.........ok
    t/comp/cpp...........ok
    t/comp/decl..........ok
    t/comp/hints.........ok
    t/comp/multiline.....ok
    t/comp/package.......ok
    t/comp/proto.........ok
    t/comp/redef.........ok
    t/comp/require.......ok
    t/comp/script........ok
    t/comp/term..........ok
    t/comp/use...........ok
    t/cmd/elsif..........ok
    t/cmd/for............ok
    t/cmd/mod............ok
    t/cmd/subval.........ok
    t/cmd/switch.........ok
    t/cmd/while..........ok
    t/run/exit...........ok
    t/run/fresh_perl.....ok
    t/run/noswitch.......ok
    t/run/runenv.........ok
    t/run/switchF........ok
    t/run/switchPx.......ok
    t/run/switcha........ok
    t/run/switches.......ok
    t/run/switchn........ok
    t/run/switchp........ok
    t/run/switcht........ok
    t/run/switchx........ok
    t/io/argv............ok
    t/io/binmode.........ok
    t/io/crlf............ok
    t/io/dup.............ok
    t/io/fflush..........ok
    t/io/fs..............ok
    t/io/inplace.........ok
    t/io/iprefix.........ok
    t/io/nargv...........ok
    t/io/open............Can't locate Errno.pm in @INC (@INC contains: ../lib)
    at io
    /open.t line 234.
    BEGIN failed--compilation aborted at io/open.t line 234.
    FAILED at test 0
    t/io/openpid.........ok
    t/io/pipe............ok
    t/io/print...........ok
    t/io/read............ok
    t/io/tell............ok
    t/io/utf8............ok
    t/op/64bitint........skipping test on this platform
    t/op/alarm...........ok
    t/op/anonsub.........ok
    t/op/append..........ok
    t/op/args............ok
    t/op/arith...........ok
    t/op/array...........ok
    t/op/assignwarn......ok
    t/op/attrs...........ok
    t/op/auto............ok
    t/op/avhv............ok
    t/op/bless...........ok
    t/op/bop.............ok
    t/op/caller..........ok
    t/op/chars...........ok
    t/op/chdir...........ok
    t/op/chop............ok
    t/op/closure.........ok
    t/op/cmp.............ok
    t/op/concat..........ok
    t/op/cond............ok
    t/op/context.........ok
    t/op/crypt...........ok
    t/op/defins..........ok
    t/op/delete..........ok
    t/op/die.............ok
    t/op/die_exit........ok
    t/op/do..............ok
    t/op/each............ok
    t/op/eval............ok
    t/op/exec............ok
    t/op/exists_sub......ok
    t/op/exp.............ok
    t/op/fh..............ok
    t/op/filetest........ok
    t/op/flip............ok
    t/op/fork............ok
    t/op/glob............ok
    t/op/gmagic..........ok
    t/op/goto............ok
    t/op/goto_xs.........skipping test on this platform
    t/op/grent...........ok
    t/op/grep............ok
    t/op/groups..........ok
    t/op/gv..............ok
    t/op/hashassign......ok
    t/op/hashwarn........ok
    t/op/inc.............ok
    t/op/inccode.........ok
    t/op/index...........ok
    t/op/int.............ok
    t/op/join............ok
    t/op/lc..............ok
    t/op/length..........ok
    t/op/lex_assign......ok
    t/op/lfs.............skipping test on this platform
    t/op/list............ok
    t/op/local...........ok
    t/op/loopctl.........ok
    t/op/lop.............ok
    t/op/magic...........Can't locate Errno.pm in @INC (@INC contains: ../lib)
    at op
    /magic.t line 299.
    BEGIN failed--compilation aborted.
    FAILED at test 38
    t/op/method..........ok
    t/op/mkdir...........ok
    t/op/my..............ok
    t/op/my_stash........ok
    t/op/nothr5005.......ok
    t/op/numconvert......ok
    t/op/oct.............ok
    t/op/or..............ok
    t/op/ord.............ok
    t/op/override........ok
    t/op/pack............ok
    t/op/pat.............ok
    t/op/pos.............ok
    t/op/pow.............ok
    t/op/push............ok
    t/op/pwent...........ok
    t/op/qq..............ok
    t/op/quotemeta.......ok
    t/op/rand............ok
    t/op/range...........ok
    t/op/read............ok
    t/op/readdir.........ok
    t/op/recurse.........ok
    t/op/ref.............ok
    t/op/regexp..........ok
    t/op/regexp_noamp....ok
    t/op/regmesg.........ok
    t/op/repeat..........ok
    t/op/reverse.........ok
    t/op/runlevel........ok
    t/op/sleep...........ok
    t/op/sort............ok
    t/op/splice..........ok
    t/op/split...........ok
    t/op/sprintf.........ok
    t/op/srand...........ok
    t/op/stat............ok
    t/op/study...........ok
    t/op/sub_lval........ok
    t/op/subst...........ok
    t/op/subst_amp.......ok
    t/op/subst_wamp......ok
    t/op/substr..........ok
    t/op/sysio...........ok
    t/op/taint...........ok
    t/op/tie.............ok
    t/op/tiearray........ok
    t/op/tiehandle.......ok
    t/op/time............ok
    t/op/tr..............ok
    t/op/undef...........ok
    t/op/universal.......ok
    t/op/unshift.........ok
    t/op/utf8decode......ok
    t/op/utfhash.........ok
    t/op/vec.............ok
    t/op/ver.............ok
    t/op/wantarray.......ok
    t/op/write...........ok
    t/uni/fold...........ok
    t/uni/lower..........ok
    t/uni/sprintf........ok
    t/uni/title..........ok
    t/uni/upper..........ok
    Failed 2 test scripts out of 176, 98.86% okay.
    ### Since not all tests were successful, you may want to run some of
    ### them individually and examine any diagnostic messages they produce.
    ### See the INSTALL document's section on "make test".
    ### You have a good chance to get more information by running
    ### ./perl harness
    ### in the 't' directory since most (>=80%) of the tests succeeded.
    ### You may have to set your dynamic library search path,
    ### LD_LIBRARY_PATH, to point to the build directory:
    ### setenv LD_LIBRARY_PATH `pwd`:$LD_LIBRARY_PATH; cd t; ./perl harness
    ### LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd t;
    ./pe
    rl harness
    ### export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH; cd t; ./perl harness
    ### for csh-style shells, like tcsh; or for traditional/modern
    ### Bourne-style shells, like bash, ksh, and zsh, respectively.
    u=1.84 s=0.3 cu=35.4 cs=8.48 scripts=176 tests=26621
    make: [minitest] Error 1 (ignored)

    daryl:~/Personal/src/perl-5.8.0>make
    AutoSplitting perl library
    ./miniperl -Ilib -e 'use AutoSplit; \
    autosplit_lib_modules(@ARGV)' lib/*.pm
    ./miniperl -Ilib -e 'use AutoSplit; \
    autosplit_lib_modules(@ARGV)' lib/*/*.pm
    make lib/re.pm
    make[1]: Entering directory `/home/webland/Personal/src/perl-5.8.0'
    make[1]: `lib/re.pm' is up to date.

    <snip>

    Making Errno (nonxs)
    Writing Makefile for Errno
    make[1]: Entering directory `/home/webland/Personal/src/perl-5.8.0/ext/Errno'
    make[1]: Leaving directory `/home/webland/Personal/src/perl-5.8.0/ext/Errno'
    make[1]: Entering directory `/home/webland/Personal/src/perl-5.8.0/ext/Errno'
    ../../miniperl "-I../../lib" "-I../../lib" "-I../../lib" "-I../../lib"
    Errno_pm.
    PL Errno.pm
    cp Errno.pm ../../lib/Errno.pm
    make[1]: Leaving directory `/home/webland/Personal/src/perl-5.8.0/ext/Errno'
    make: [extras.make] Error 1 (ignored)

    Everything is up to date. Type 'make test' to run test suite.


    At 11:31 PM 2/20/2003 +0000, you wrote:
    On Thu, Feb 20, 2003 at 05:17:04PM -0500, Rob Dallas wrote:
    When I execute the mimiperl command you suggest I simply get a command
    prompt back with no other messages.
    Hmmm - could you try each of the following in order until you start
    gettting error messages again?

    ./miniperl -Ilib -e 'use File::Basename'
    ./miniperl -Ilib -e 'use File::Basename qw(&basename &dirname)'
    ./miniperl -Ilib -e 'use Config; use File::Basename qw(&basename &dirname)'
    ./miniperl -Ilib lib/lib_pm.PL
    make lib/lib.pm
    make minitest
    make

    --
    Lady Nancy Astor: If you were my husband, I would flavour your coffee
    with poison.
    Churchill: Madam - if I were your husband, I would drink it.
  • Dave Mitchell at Feb 25, 2003 at 1:32 pm

    On Fri, Feb 21, 2003 at 11:50:19AM -0500, Rob Dallas wrote:
    These are the results I got from the commands below.

    Well, I don't know why, but the problem seems to have gone away.
    A final 'make test; make install' should now work.
    daryl:~/Personal>cd src/perl-5.8.0
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib -e 'use File::Basename'
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib -e 'use File::Basename
    qw(&base
    name &dirname)'
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib -e 'use Config; use
    File::Basen
    ame qw(&basename &dirname)'
    daryl:~/Personal/src/perl-5.8.0>./miniperl -Ilib lib/lib_pm.PL
    Extracting lib.pm (with variable substitutions)
    [snip]

    --
    To collect all the latest movies, simply place an unprotected ftp server
    on the Internet, and wait for the disk to fill....

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupperl5-porters @
categoriesperl
postedFeb 12, '03 at 9:14p
activeFeb 25, '03 at 1:32p
posts7
users3
websiteperl.org

People

Translate

site design / logo © 2021 Grokbase