[1879] in Athena Bugs
Re: [Bugs #1878] hf77 - ioinit failure
daemon@ATHENA.MIT.EDU (epeisach@ATHENA.MIT.EDU)
Sat Mar 11 11:19:24 1989
From: <epeisach@ATHENA.MIT.EDU>
Date: Sat, 11 Mar 89 11:19:07 EST
To: ellis@ATHENA.MIT.EDU
Cc: bugs@ATHENA.MIT.EDU, epeisach@ATHENA.MIT.EDU
I have examined your problem with ioinit on the RT.
> The following code:
> call ioinit (.true., .false., .false., 'FORT', .false.)
> stop
> end
> does not load properly, giving this error:
>E40-369-4% hf77 tmp.f
>tmp.f:
> MAIN:
>Undefined:
...
...
1) The problem will also occurs with the older fortran libraries on the
RT. (f77.old)
2) On examining what the vax and rt fortran compilers do with regard to
libraries, the following was noted:
vax rt
ioinit: U77 I77
library load
sequence: U77,F77,I77 F77,I77,U77
3) Cause of problem: ionit calls functions that are defined in F77.
However, the loader uses the libraries in the order they are specified.
If a library requires definitions in files that were linked earlier, then
the loader will never find them.
4) FIX:
Short term:
-----------
Compile all programs with this problem with -lI77. This will
force the library with ioinit as the first library loaded.
athena% hf77 tmp.f -lI77
Problems: Not intuitive - requires smart end user
Note: This will also work with f77.old
Long term fix:
--------------
We move ioinit.f in the fortran library sources from I77 to F77
and recompile the libraries. This should also be forwarded to IBM.
Problems:
1) Can we do this so late in the game (I remember we had some
problems compiling the libraries originally)
2) We would then be inconsistant with IBM sources. The libraries
currently in place are straight from IBM. Someone will have to remember
to move this file again if a new set of sources are taken over.
Ezra Peisach