Operating System - Linux
1756751 Members
3168 Online
108852 Solutions
New Discussion юеВ

Compiling Perl-5.8.0 on HPUX 11.23 Itanium

 
SOLVED
Go to solution
MauriceConway
Advisor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

Good morning, and thank you for the replies.

procura - I did what the poster in that link suggested and it did not work. I tried compiling with gcc, then with the hp's compiler, both failed with the same failure in my previous posting.

Steve Ellcey - I didnt know where to add the "ifndef" entry, there are lots of sendfile/sendpath lines in socket.h, so I opted for your other solution. I manually walked through the Configure, and made these choices based on your posting;

****************************************
Perl can be built to understand large files (files larger than 2 gigabytes)
on some systems. To do so, Configure can be run with -Duselargefiles.

If this doesn't make any sense to you, just accept the default 'y'.
Try to understand large files, if available? [y] n
****************************************

I then ran make depend, once it finished, I ran make and here is where it blew up using gcc;

****************************************
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 /bin/sh: 13320 Memory fault(coredump)
make: [minitest] Error 139 (ignored)
*** Error exit code 1 (ignored)
./miniperl -Ilib configpm configpm.tmp
*** Termination signal 139

Stop.
****************************************

and here with hpux compiler;

****************************************
cc -c -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings -I/usr/local/include +O2 +Onolimit -DVERSION=\"2.04\" -DXS_VERSION=\"2.04\" +Z "-I../.." Storable.c
(Bundled) cc: warning 922: "-Ae" is unsupported in the bundled compiler, ignored.
(Bundled) cc: warning 922: "+O2" is unsupported in the bundled compiler, ignored.
(Bundled) cc: warning 922: "+Onolimit" is unsupported in the bundled compiler, ignored.
Error 168: "Storable.xs", line 1303 # Illegal types associated with operator
'==': 'sv *(**)(...)' and 'sv *(*[27])(stcxt *,char *)'.
cxt->hseen = ((cxt->retrieve_vtbl == sv_old_retrieve) ? newHV() : 0
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
make: *** [Storable.o] Error 2
*** Error exit code 2

Stop.
****************************************

Any suggestions?

also, how do I use this point system? is it 10 points can be awarded per day? if so, Im sorry for not awarding any yesterday, I'm new to this forum.

MauriceConway
Advisor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

procura - in one of your emails to me you mentioned grabbing a pre-compiled build of Perl from your site. I looked and cant find Perl 5.8.0 for hpux 11.23 Itanium. Do you only have 5.8.8 ?

Reason I need 5.8.0 and cant use 5.8.8 is Im replacing a server that has an existing version of Perl on it (5.8.0) and the users dont want to jump to 5.8.8 until they test their applications, etc. So they are requiring me to build 5.8.0 for them on this system initially.

Thank you.
H.Merijn Brand (procura
Honored Contributor
Solution

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

I'll see if I can build a 5.8.0 tomorrow.
Our 11.23 is pretty recent, so yes, so far 5.8.8 is the only available por.

What config do you need? 64bitall? threaded?

I'm hopeng for non-threaded 64bitall
Show me the output of the 5.8.0 version:

# perl -V

(capital V)

Enjoy, Have FUN! H.Merijn
Enjoy, Have FUN! H.Merijn
MauriceConway
Advisor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

Here is the output from Perl -V on the system thats being replaced.

********************************************
hostname> perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
Platform:
osname=hpux, osvers=11.11, archname=PA-RISC2.0-thread-multi
uname='hp-ux ml015 b.11.11 u 9000800 106901577 unlimited-user license '
config_args=''
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_POSIX_C_SOURCE=199506L -D_REENTRANT -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 ',
optimize='+O2 +Onolimit',
cppflags='-Aa -D__STDC_EXT__ -D_HPUX_SOURCE -D_POSIX_C_SOURCE=199506L -D_REENTRANT -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings'
ccversion='B.11.11.06', gccversion='', gccosandvers=''
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='/usr/bin/ld', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib
libs=-lnsl -lnm -lndbm -lmalloc -ldld -lm -lpthread -lc -lndir -lcrypt -lsec
perllibs=-lnsl -lnm -lmalloc -ldld -lm -lpthread -lc -lndir -lcrypt -lsec
libc=/lib/libc.sl, so=sl, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-B,deferred '
cccdlflags='+Z', lddlflags='-b +vnocompatwarnings -L/usr/local/lib'


Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
Built under hpux
Compiled at Sep 22 2003 15:26:27
@INC:
/app/common/perl-5.8.0/lib/5.8.0/PA-RISC2.0-thread-multi
/app/common/perl-5.8.0/lib/5.8.0
/app/common/perl-5.8.0/lib/site_perl/5.8.0/PA-RISC2.0-thread-multi
/app/common/perl-5.8.0/lib/site_perl/5.8.0
/app/common/perl-5.8.0/lib/site_perl
.
hostname> uname -a
HP-UX ml012 B.11.11 U 9000/800 158901567 unlimited-user license
hostname>
********************************************

Does the above output tell you if its 64bit/threaded or not? If it doesnt, how can I tell?

Just to add a note too this discussion; I have attempted to compile this as both my self (non-super user) and as root (logged in directly, not su -) with the same results.

Thank you.
H.Merijn Brand (procura
Honored Contributor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

Being root or not will only have a tiny influence on the results of the test suite, as some ping commands are only tested when beinge root (icmp is not allowed for non root) for example.

I fear the worst!
Your previous build is a 32bit threaded build:
--8<---
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
-->8---

Are you very very sure you want this on Itanium? Realy?
I would strongly advice to go for 64bitall non-threaded.

But before you make that decision: what is this perl going to be used for? Is there a DBD to be built? DBD::Oracle (and all other DBD's as well) can only connect to a database of the same bitness. So if you are also migrationg databases, and you have Oracle 9 or 10 on Itanium, you will have to check that it is 32bit, which is *very* unlikely. If it is 64bit, you will need a 64bit perl.

Enjoy, Have FUN! H.Merijn
Enjoy, Have FUN! H.Merijn
MauriceConway
Advisor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

procura, just curious here, as I am unable to understand how to tell. How can you tell its 32bit and not 64?

Im looking to the other questions you asked now.
MauriceConway
Advisor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

I figured out how you were able to tell. :)
MauriceConway
Advisor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

64bitall non-threaded will work.

thank you procura, I really appreciate your assistance here.
MauriceConway
Advisor

Re: Compiling Perl-5.8.0 on HPUX 11.23 Itanium

Procura, I got it to compile.

I had to force 64bit and largefiles in the config for some reason. I also selected threading when asked, here is what my config looked like.

./Configure -Dprefix=/app/common/home/mnmiller/sandbox/perl-5.8.0_build -Dcc=gcc -Duselargefiles -Duse64bitall

it did not complain about anything during the make, and I dont think I failed any make test tests.

Thank you for taking the time to assist with my problems.