Has anyone been successful in using octave on IRIX 5.2? It compiles
fine for me, but seg-faults during startup. I'm actually using
gcc--2.5.8/libg++-2.5.3 compiled under IRIX 5.1.2, could this be the
problem? Before spending time on rebuilding gcc/libg++ it would be
nice to know if it would help.
Global constructors don't work yet with gcc on Irix 5.x. Octave needs
them. Next release of gcc should have them working---I was told by
gcc/Cygnus folks that they should have it out sometime in the spring.
I found sometihing about on the FlexFAX list. I'm in the process of
testing it out today.
>From: Sam Leffler <[hidden email]>
>Date: Wed Apr 27 12:20:11 PDT 1994
?Subject: building FlexFAX v2.2.2 under IRIX 5.2 with gcc 2.5.8
To build v2.2.2 under IRIX 5.2 (or similar) with gcc 2.5.8 beware
of two known problems in the gcc distribution.
1. The configure script does not specify that "collect" must be used
for C++ programs. Without collect global constructors will not be
executed leaving many global variables in the fax server program
(and other programs) uninitialized. To correct this problem patch
the configure script before building gcc:
*** configure Fri Nov 19 13:44:34 1993
--- configure.new Wed Apr 27 11:35:27 1994
*************** for machine in $canon_build $canon_host
*** 1050,1055 ****
--- 1050,1057 ----
# mips-tfile doesn't work yet
+ # See comment in mips/iris5.h file.
mips-sgi-irix4loser*) # Mostly like a MIPS.
if [ x$stabs = xyes ]; then
2. Build gcc using the following cookbook:
make CC="stage1/xgcc -Bstage1/" CFLAGS="-O2 -save-temps"
make CC="stage2/xgcc -Bstage2/" CFLAGS="-O2 -save-temps"
make CC="stage2/xgcc -Bstage2/" CFLAGS="-O2 -save-temps" install
(or similar.) The extra "-save-temps" is necessary to get a
correctly functioning compiler. The option is NOT needed when
invoking gcc; only when building it.
The compiled octave, using Sam's gcc fixes, seems to work fine. The
only problem is that it seg-faults in clean_up_and_exit in the exit()
routine. This occurs after typing the "quit" command. This seems to be
due to calling cleanup_tmp_files() from exit(), via the atexit()
command. If I remove the atexit call it shuts down nicely.
PS Is cleanup_tmp_files called twice? I don't have sources here, I think
it was perhaps called from clean_up_and_exit also.