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


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

binutils/objcopy & ieee: illegal variable index


Hi there,

I've built objcopy from binutils-2.8.1 with --target=m68k-coff. This
includes IEEE 695 support (principally), but doesn't work in my environment.

We're building our software here with MRI cross development tools; output
format is IEEE 695.

For debugging purposes I finally want to install GNU gdb with BDM support
for MC68332 on Linux/i386. As I'm currently having problems to get gdb
reading the binary (not really correct: I've got gdb reading it, but it
tells me "Symbol format `ieee' unknown."), I thought I quickly convert the
binary from IEEE 695 to coff which is proven to work with gdb (Thanks,
Gunter).


To get objcopy to read the MRI IEEE format at all I firstly had to patch
binutils-2.8.1/bfd/cpu-m68k.c so libbfd switches to target m68k when it
sees MRI's `CPU32' in the IEEE format.

Now objdump can read & disassemble the binary. Fine.

But objcopy had a segmentation violation when called with --debugging (what
I desperately need). Fixed this in binutils/ieee.c (uninitialized pointer
on the stack).

Now finally objcopy reads the binary but tells me:
$ ./objcopy --input-target=ieee --output-target=coff-m68k --verbose \
	--debugging foo.ieee foo.coff
copy from foo.ieee(ieee) to foo.coff(coff-m68k)
foo.ieee: 0x9984: illegal variable index (0xd)

This error message comes from binutils/ieee.c, I think.

Is there anybody working with IEEE format and had similar problems? I can't
expend too much time for this project, so any help is appreciated.

Regards
	Herbert.
-- 
Herbert Thielen
Lucent Technologies Network Systems Deutschland
FLI16, GSM BTS Application Software Development
Thurn-und-Taxis-Str. 10
90411 N"urnberg
GERMANY
Email   hthielen@lucent.com
Phone   +49 911 526 3259
Fax     +49 911 526 2048