Path: utzoo!utgpu!news-server.csri.toronto.edu!me!eastick Newsgroups: comp.lang.perl From: eastick@me.utoronto.ca (Doug Eastick) Subject: Re: Need help building PERL on an SGI 4D70 running IRIX 3.3.1 Message-ID: <90Oct18.071256edt.18900@me.utoronto.ca> Organization: University of Toronto, Department of Mechanical Engineering References: Distribution: comp Date: 18 Oct 90 11:13:06 GMT davis@hobbes.chem.uh.edu (Malcolm Davis) writes: undef voidsig, memcmp, vfork and maybe volatile ---- >From mullian.ee.mu.OZ.AU!meb Fri Oct 12 22:44:35 1990 Received: from munnari.oz.au by me.utoronto.ca with SMTP id 22139; Fri, 12 Oct 90 22:43:07 EDT Received: from mullian.ee.mu.OZ.AU by munnari.oz.au with SMTP (5.64+1.3.1+0.50) id AA26562; Sat, 13 Oct 1990 12:42:25 +1000 (from meb@mullian.ee.mu.OZ.AU for eastick@me.utoronto.ca) Received: from orac.ee.mu.OZ.AU by mullian.ee.mu.OZ.AU (4.1) id AA09294; Sat, 13 Oct 90 12:42:22 EST Received: by orac.ee.mu.OZ.AU (4.0) id AA02475; Sat, 13 Oct 90 12:42:22 EST Date: Sat, 13 Oct 90 13:42:22 EDT From: meb@mullian.ee.mu.OZ.AU (Matthew Barry) Message-Id: <9010130242.2475@orac.ee.mu.OZ.AU> To: eastick@me.utoronto.ca Subject: Perl on IRIX 3.3.0 Reply-To: meb@ee.mu.OZ.AU Status: OR Hello Doug, Hopefully you have already been inundated with answers on how to do get perl running under irix. If not read on. Below is the advice I received to the same question. I hope this helps, Matthew Date: Thu, 13 Sep 90 13:37:22 PDT From: uunet!chevpyr!jtmwi@munnari.oz (T.M. Wissler) To: meb@ee.mu.oz Subject: perl on irix at 3.3 A friend saw your note about perl and forwarded it to me. I recently brought up perl on an sgi 4d/20 at 3.3 and an sgi 4d/25 at 3.2 I started with the GNU distribution of perl at patchlevel 18. Everything was fine at 3.2 with the exception of the signal type which you noted. 3.3 was a mess. I finally tracked down the following fixes, all doable within the config.sh file: 1) Disable vfork. Some unknown problem here causes most of the core dumps. vfork didn't exist at 3.2. 2) Disable memcmp. memcmp is buggy. It was ok at 3.2, but does not work at 3.3. DEC MIPS machines also have a buggy memcmp which is detected by perl. It also checks for little-endian to single out the DEC implementation, so sgi slips through. I changed the source to not check endian, but it is easier to just change config.sh (as shown below) to disable memcmp. 3) I also have volatile disabled. I don't know if this is required for perl to work properly. 4) Use the -D_BSD_COMPAT switch to cc. I hope I didn't forget anything. Following is the complete config.sh which I used. Good luck. Tom Wissler #!/bin/sh # config.sh # This file was produced by running the Configure script # then tweaked by hand d_eunice='undef' define='define' eunicefix=':' loclist=' cat cp echo expr grep mkdir mv rm sed sort tr uniq ' expr='/bin/expr' sed='/bin/sed' echo='/bin/echo' cat='/bin/cat' rm='/bin/rm' mv='/bin/mv' cp='/bin/cp' tail='' tr='/usr/bin/tr' mkdir='/bin/mkdir' sort='/bin/sort' uniq='/usr/bin/uniq' grep='/bin/grep' trylist=' Mcc cpp csh egrep test ' test='test' inews='' egrep='/usr/bin/egrep' more='' pg='' Mcc='Mcc' vi='' mailx='' mail='' cpp='/usr/lib/cpp' perl='' emacs='' ls='' rmail='' sendmail='' shar='' smail='' tbl='' troff='' nroff='' uname='' uuname='' line='' chgrp='' chmod='' lint='' sleep='' pr='' tar='' ln='' lpr='' lp='' touch='' make='' date='' csh='/bin/csh' Log='$Log' Header='$Header' bin='/usr/local/bin' byteorder='4321' contains='grep' cppstdin='/usr/lib/cpp' cppminus='' d_bcmp='define' d_bcopy='define' d_bzero='define' d_castneg='define' d_charsprf='undef' d_crypt='define' cryptlib='' d_csh='define' d_dosuid='undef' d_dup2='define' d_fchmod='define' d_fchown='define' d_fcntl='define' d_flock='define' d_getgrps='define' d_gethent='define' d_getpgrp='undef' d_getpgrp2='undef' d_getprior='undef' d_htonl='define' d_index='undef' d_ioctl='define' d_killpg='define' d_lstat='define' d_memcmp='undef' d_memcpy='define' d_mkdir='define' d_ndbm='define' d_odbm='define' d_readdir='define' d_rename='define' d_rmdir='define' d_setegid='define' d_seteuid='define' d_setpgrp='define' d_setpgrp2='undef' d_setprior='undef' d_setregid='define' d_setresgid='undef' d_setreuid='define' d_setresuid='undef' d_setrgid='define' d_setruid='define' d_socket='define' d_sockpair='define' d_oldsock='undef' socketlib='' d_statblks='undef' d_stdstdio='define' d_strctcpy='define' d_strerror='define' d_symlink='define' d_syscall='define' d_varargs='define' d_vfork='undef' d_voidsig='undef' d_volatile='undef' d_vprintf='define' d_charvspr='undef' d_wait4='define' gidtype='int' i_dirent='define' d_dirnamlen='undef' i_fcntl='define' i_grp='define' i_niin='define' i_pwd='define' d_pwquota='undef' d_pwage='define' d_pwchange='undef' d_pwclass='undef' d_pwexpire='undef' i_sysdir='define' i_sysioctl='define' i_sysndir='undef' i_time='undef' i_systime='define' d_systimekernel='undef' i_utime='define' i_varargs='define' i_vfork='undef' intsize='4' libc='/usr/lib/libc.a' mallocsrc='' mallocobj='' usemymalloc='n' mansrc='/usr/catman/local/cat1' manext='1' models='none' split='' small='' medium='' large='' huge='' optimize='-O' ccflags='-D_BSD_COMPAT -DDEBUGGING' cppflags=' -D_BSD_COMPAT -DDEBUGGING' ldflags='-s' cc='cc' libs='-lsun -lbsd -lmalloc -lc_s' n='' c='\c' package='perl' randbits='15' sig_name='ZERO HUP INT QUIT ILL TRAP ABRT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM USR1 USR2 CLD PWR STOP TSTP POLL IO URG WINCH VTALRM PROF CONT TTIN TTOU XCPU XFSZ' spitshell='cat' shsharp='true' sharpbang='#!' startsh='#!/bin/sh' stdchar='unsigned char' uidtype='uid_t' voidflags='7' defvoidused='7' yacc='yacc' privlib='/usr/local/lib/perl' lib='' CONFIG=true