This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: OSF/1 Binary format?


   Date: Tue, 7 Dec 1999 01:00:06 -0500 (EST)
   From: Scott Venier <scott@compu-aid.com>

   I have a simulator that takes OSF/1 binaries and simulates their
   execution.  I've been working to port this simulator to linux on alpha,
   and have only one last(?) problem - the format of the input binary.  It
   expects an a.out (I think.  It uses the default format on an OSF/1 V3.2
   machine) but I can't seem to generate an a.out file on linux.

As you have discovered, OSF/1 uses ECOFF.  To produce a cross-compiler
for OSF/1 ECOFF, configure with something like --target
alpha-dec-osf3.2.

However, note that the GNU binutils do not fully support OSF/1.  In
particular, they do not support shared libraries.  Therefore, this
approach is likely to have some problems.

   I tried rebuilding egcs and the binutils to the alpha-linuxecoff
   target.  Looking at <asm/a.out.h> seemed to indicate that OSF/1 actually
   uses ecoff binaries, not a.out.  I get the error at the end of this
   message when building egcs.  Is that because I don't have a crt0.o?  Where
   can I find one?  I checked out the current glibc but didn't see a crt0.S
   for alpha in there.

I don't know whether glibc supports ECOFF.  It may only support ELF.

   toplev.o: In function `compile_file':
   /570/scottven/newest/egcs/gcc/toplev.c:3131: undefined reference to
   `ASM_FILE_START'
   /570/scottven/newest/egcs/gcc/toplev.c:3131: undefined reference to
   `ASM_FILE_START'

This is a problem with gcc, not the binutils.  ASM_FILE_START should
be a macro defined somewhere in the gcc tm.h file.  You need to ask on
a gcc mailing list about this.

Ian

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]