🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.utils.bug
Article #1047

i960 toolchain linker problem

#1047
From: Patrick D. Wildi
Date: Fri, 06 Nov 1992 16:48
58 lines
2953 bytes
Hi

I am trying to set up a GNU toolchain for cross-compiling i960 code
on a sun4c (sunos 4.1.1).

I use the following configurations for these tools:

GCC (2.2.2):    --host=sun4 --target=i960 --nfp
GAS (1.92.3):   --host=sun4 --target=i960-nindy
Binutils (2.0): --host=sun4  (using LDEMULATION=gld960, GNUTARGET=b.out.big to run gld)


Is this the correct configuration? Would it be better to use a coff format?
Does the coff configuration work for all tools?

It seems to me that GCC and GAS work ok. But the linker always fails with a
this segmentation error:
	
>	lewis [ld] setenv LDEMULATION gld960
>	lewis [ld] gdb ld.new
>	GDB is free software and you are welcome to distribute copies of it
>	 under certain conditions; type "show copying" to see the conditions.
>	There is absolutely no warranty for GDB; type "show warranty" for details.
>	GDB 4.5, Copyright 1992 Free Software Foundation, Inc...
>	(gdb) run -b b.out.big -o tt.o bite.o
>
>	Program received signal 11, Segmentation fault
>	0x2ec94 in b_out_get_relocated_section_contents (in_abfd=0xa9060,
>    	seclet=0xa9428, data=0xaf028 "V1.0x7") at bout.c:1155
>	1155            switch (reloc->howto->type)
>	(gdb) where
>	#0  0x2ec94 in b_out_get_relocated_section_contents (in_abfd=0xa9060,
>	    seclet=0xa9428, data=0xaf028 "V1.0x7") at bout.c:1155
>	#1  0x1b8c4 in rel (abfd=0xa9060, seclet=0xa9428, output_section=0xa9288,
>	    data=0xaf028 "V1.0x7") at seclet.c:86
>	#2  0x1b944 in seclet_dump_seclet (abfd=0xa9060, seclet=0xa9428,
>	    section=0xa9288, data=0xaf028 "V1.0x7") at seclet.c:110
>	#3  0x1babc in seclet_dump (abfd=0xa9060, data=0xaf028 "V1.0x7")
>	    at seclet.c:146
>	#4  0x12c0c in write_relaxnorel (output_bfd=0xa9060, data=0xaf028 "V1.0x7")
>	    at relax.c:162
>	#5  0xe244 in ldwrite () at ldwrite.c:414
>	#6  0xc2f4 in main (argc=6, argv=0xf7fff83c) at ldmain.c:254
>	(gdb) p *reloc
>	$1 = {sym_ptr_ptr = 0xabdec, address = 32, addend = 0, howto = 0x440}
>	(gdb) p *reloc->howto
>	$2 = Cannot access memory at address 0x440.

Can anybody give me a hint what is wrong in my setup?

Thanks Patrick.

-------------------------------------------------------------------
Patrick D. Wildi		Phone:    (310)443-5727
Ascom Timeplex 			FAX:      (310)443-5582
10920 Wilshire Blvd.		Internet: patrick@wwtc.timeplex.com
Los Angeles, CA 90024		UUCP:     uunet!uncng!patrick
-------------------------------------------------------------------
Technical Details
Message-ID: <9211061648.AA03665@wwtc.timeplex.com>
Path: arc1-ca.pugleaf.net!sparky!uunet!stanford.edu!agate!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!wwtc.timeplex.com!patrick

Show Full Headers
Complete Article Headers
Newsgroups: gnu.utils.bug
Path: arc1-ca.pugleaf.net!sparky!uunet!stanford.edu!agate!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!wwtc.timeplex.com!patrick
From: patrick@wwtc.timeplex.com (Patrick D. Wildi)
Subject: i960 toolchain linker problem
Message-ID: <9211061648.AA03665@wwtc.timeplex.com>
Sender: gnulists@ai.mit.edu
Organization: GNUs Not Usenet
Distribution: gnu
Date: Fri, 6 Nov 1992 16:48:21 GMT
Approved: bug-gnu-utils@prep.ai.mit.edu
Lines: 59