[comp.emacs] Gnu binary utilities

mike@turing.UNM.EDU (Michael I. Bushnell) (04/09/88)

A while back, I was poking around on uunet.uu.net, in the gnu
subdirectory.  I fetched the gnubin stuff, but I have some questions.
First, ld.c requires the include file "symseg.h".  I couldn't find
this in any other gnu software, and it isn't in the gnubin stuff.
Also, strip seemed to mung binaries.  (For information's sake, I am on
a Vax.)  There is also a really neat make, and a texinfo file with
very good, complete documentation.

I thought I would try and find the sysseg.h header file by poking
around on prep.ai.mit.edu, but I couldn't find it anywhere.  Does
anyone know anything about this stuff?  Does it represent an
"official" FSF release?

			Michael I. Bushnell
			HASA - "A" division
14308 Skyline Rd NE				Computer Science Dept.
Albuquerque, NM  87123		OR		Farris Engineering Ctr.
	OR					University of New Mexico
mike@turing.unm.edu				Albuquerque, NM  87131
{ucbvax,gatech}!unmvax!turing.unm.edu!mike

root@cca.ucsf.edu (Computer Center) (04/14/88)

In article <923@unmvax.unm.edu>, mike@turing.UNM.EDU (Michael I. Bushnell) writes:
> 
> 
> 
> A while back, I was poking around on uunet.uu.net, in the gnu
> subdirectory.  I fetched the gnubin stuff, but I have some questions.
> First, ld.c requires the include file "symseg.h".  I couldn't find

The file "symseg.h" may be found in gnu-gdb.tar.Z distribution.

Also, the uunet file is gnu/binutils.tar.Z, not gnu/gnubin.

Thos Sumner       (thos@cca.ucsf.edu)   BITNET:  thos@ucsfcca
(The I.G.)        (...ucbvax!ucsfcgl!cca.ucsf!thos)

OS|2 -- an Operating System for puppets.

#include <disclaimer.std>

root@cca.ucsf.edu (Computer Center) (04/14/88)

In article <1229@ucsfcca.ucsf.edu>, root@cca.ucsf.edu (Computer Center) writes:
> In article <923@unmvax.unm.edu>, mike@turing.UNM.EDU (Michael I. Bushnell) writes:
> > 
> > A while back, I was poking around on uunet.uu.net, in the gnu
> > subdirectory.  I fetched the gnubin stuff, but I have some questions.
> > First, ld.c requires the include file "symseg.h".  I couldn't find
> 
> The file "symseg.h" may be found in the gnu-gdb.tar.Z distribution.
> 
> Also, the uunet file is gnu/binutils.tar.Z, not gnu/gnubin.
> 

The "symseg.h" file taken from gdb.tar.Z (this file appears under
several names on different systems) is not quite enough to get ld
to compile and link under BSD4.3.

The following fragment was extracted from the core.c file in the same
archive:


#ifndef N_TXTADDR
#define N_TXTADDR(hdr) 0
#endif /* no N_TXTADDR */

#ifndef N_DATADDR
#define N_DATADDR(hdr) hdr.a_text
#endif /* no N_DATADDR */


and appending this to the symseg.h file allowed the generation
of a running GNU ld using the BSD4.3 cc and ld.

The following command was used to self-link GNU ld from that version
(running as ./ld) to make the file nd which also appeared to execute
normally:

     ./ld /lib/crt0.o ld.o -lc -o nd

Running ./nd in place of ./ld produced a file identical (cmp null
output) to the nd file.

The binary files which result are different depending on whether
the BSD4.3 ld or the GNU ld is used to link with the above argument
list. They are of different lengths as produced but are the same
length (but still different) after stripping by the BSD4.3 strip
command.

rich@oxtrap.UUCP (K. Richard Magill) (04/16/88)

In article <923@unmvax.unm.edu> mike@turing.UNM.EDU.UUCP (Michael I. Bushnell) writes:
>A while back, I was poking around on uunet.uu.net, in the gnu
>subdirectory.  I fetched the gnubin stuff, but I have some questions.
>First, ld.c requires the include file "symseg.h".

A quick find on my gnu dir show that c++-1.18.2, gdb+-2.4.0, gdb-2.5?,
and gcc-1.19 each come with a version of that file.  I don't remember
which one I linked to to compile ld.