[comp.sys.mips] Undefined Routine with F77

cristy@eplrx7.uucp (John Cristy) (09/08/90)

  I get an undefined routine error with this command:

    f77 -systype bsd43 -I.. -I/usr/include/bsd43 -I/usr/include -O 
      test.c test.f
    test.c:
    test.f:
    ld:
    Undefined:
    s_abort

  Is this the correct f77 command?  Where can I find the s_abort 
  beastie?

  cristy@dupont.com
--
The UUCP Mailer

calvin@dinkum.wpd.sgi.com (Calvin H. Vu) (09/08/90)

This problem only arises when your main program is in C and your I/O is
done in Fortran.

The s_abort() subroutine is defined in libF77.a and used in libI77.a
(Don't ask me why but I hope it will be moved to libI77.a  soon).
Therefore the normal linking sequence  ....-lF77 -lI77 .....  won't get 
s_abort() linked in for you from libF77.a unless your main program is Fortran.
Do I make sense ?

You can work around it for now by adding -lI77 to your command line.

- calvin
--
-----------------------------------------------------------------------------
Calvin H. Vu			   | "We are each of us angels with only one
Silicon Graphics Computer Systems  | wing.  And we can only fly embracing
calvin@sgi.com   (415) 962-3679	   | each other."