Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Help, unable to install 5.8.0 on Solaris 2.7 #6300

Closed
p5pRT opened this issue Feb 12, 2003 · 11 comments
Closed

Help, unable to install 5.8.0 on Solaris 2.7 #6300

p5pRT opened this issue Feb 12, 2003 · 11 comments

Comments

@p5pRT
Copy link

p5pRT commented Feb 12, 2003

Migrated from rt.perl.org#20879 (status was 'resolved')

Searchable as RT20879$

@p5pRT
Copy link
Author

p5pRT commented Feb 12, 2003

From rdallas@chin.gc.ca

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

@p5pRT
Copy link
Author

p5pRT commented Feb 20, 2003

From @iabyn

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".

@p5pRT
Copy link
Author

p5pRT commented Feb 20, 2003

From rdallas@chin.gc.ca

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".

@p5pRT
Copy link
Author

p5pRT commented Feb 20, 2003

From @iabyn

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?

@p5pRT
Copy link
Author

p5pRT commented Feb 20, 2003

From @iabyn

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.

@p5pRT
Copy link
Author

p5pRT commented Feb 21, 2003

From rdallas@chin.gc.ca

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.

@p5pRT
Copy link
Author

p5pRT commented Feb 25, 2003

From @iabyn

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....

@p5pRT
Copy link
Author

p5pRT commented Mar 4, 2003

From rdallas@chin.gc.ca

Just to let you know. I will try the Perl 5.8.0 on Solaris 2.7 again.

For my project I went ahead and used Perl 5.6.1 which compiled/installed OK
in Solaris 2.7. I did this after I submitted my bug report to you but
before I was asked to test various scenarios.

To summarize, when I originally tried to install 5.8.0 and received the
error, Perl 5.004 would have been the Perl found in $PATH. When I tried the
commands sent to me to debug this problem, Perl 5.6.1 would have been the
Perl found in $PATH. Further to that, I'm doing this upgrade because the
Perl 5.004 seems to be hosed up (unable to add modules ..(don't ask)). This
would/could be the system difference.

I will prove/disprove this theory and let you know how I make out.

Thanks for your time, I appreciate the help.
Rob....

At 01​:32 PM 2/25/2003 +0000, you wrote​:

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....

@p5pRT
Copy link
Author

p5pRT commented Apr 22, 2003

From rdallas@chin.gc.ca

I have been unable to reproduce this problem again.
Please close this call.

I would like to thank you for your prompt and patient attention to my
requests for help.

Much Thanks
Rob...

Date​: Tue, 04 Mar 2003 14​:22​:01 -0500
To​: perlbug-followup@​perl.org
From​: Rob Dallas <rdallas@​chin.gc.ca>
Subject​: Re​: [perl #20879] Help, unable to install 5.8.0 on Solaris 2.7

Just to let you know. I will try the Perl 5.8.0 on Solaris 2.7 again.

For my project I went ahead and used Perl 5.6.1 which compiled/installed OK
in Solaris 2.7. I did this after I submitted my bug report to you but before
I was asked to test various scenarios.

To summarize, when I originally tried to install 5.8.0 and received the
error, Perl 5.004 would have been the Perl found in $PATH. When I tried the
commands sent to me to debug this problem, Perl 5.6.1 would have been the
Perl found in $PATH. Further to that, I'm doing this upgrade because the
Perl 5.004 seems to be hosed up (unable to add modules ..(don't ask)). This
would/could be the system difference.

I will prove/disprove this theory and let you know how I make out.

Thanks for your time, I appreciate the help.
Rob....

At 01​:32 PM 2/25/2003 +0000, you wrote​:

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....

@p5pRT
Copy link
Author

p5pRT commented Apr 30, 2003

From @ask

[rdallas@​chin.gc.ca - Tue Apr 22 11​:35​:43 2003]​:

I have been unable to reproduce this problem again.
Please close this call.

I would like to thank you for your prompt and patient attention to my
requests for help.

Thanks for following up on it.

- ask

--
ask bjoern hansen, http​://askbjoernhansen.com/ !try; do();

@p5pRT
Copy link
Author

p5pRT commented Apr 30, 2003

@ask - Status changed from 'new' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant