Subject:
|
brickOS and latest binutils (1 issue now fixed in binutils CVS, and workaround patch to brickOS for the other)
|
Newsgroups:
|
lugnet.robotics.rcx.legos
|
Date:
|
Wed, 4 Dec 2002 00:21:54 GMT
|
Viewed:
|
3194 times
|
| |
| |
The "invalid symbolsrec file" issue (error from makelx) issue is now fixed
in binutils CVS, both on the trunk, and on the 2.13 branch - so the next
release of binutils, be it 2.13.2 or 2.14 will have this fixed.
The "ld segmentation fault" issue is rather more tricky, and will require
the attention of a binutils COFF guru, but this patch to Makefile.user works
around it:
NB: Yes, I am overriding "OUTPUT_FORMAT(symbolsrec)" from brickOS.lds
with --oformat coff-h8300. You may choose to change genlds instead if you
like. It mainly depends on whether you this is treated as a temporary (but
probably long term) workaround, or a permanent change.
PS: The cause of the "ld segfault" issue is a buffer overrun which actually
existed way before binutils-2.13, its just it only started to hit memory
which was later used by the memory manager in binutils-2.13
Max.
########################################
Index: Makefile.user
===================================================================
RCS file: /cvsroot/brickos/brickos/Makefile.user,v
retrieving revision 1.8
diff -u -r1.8 Makefile.user
--- Makefile.user 23 Oct 2002 06:04:31 -0000 1.8
+++ Makefile.user 4 Dec 2002 00:15:26 -0000
@@ -45,13 +45,19 @@
%.dis2: %.dmap %.dis
$(MERGEMAP) $*.dmap $*.dis > $@
-# How to make srec files of dynamic executables
-%.ds1: %.o $(DOBJECTS) $(DYNAMIC_LDS)
- $(LD) $(DLDFLAGS) $*.o $(DOBJECTS) $(LIBS) -o $@ -Ttext $(BASE1)
+# How to make coff files of dynamic executables (twice, for makelx)
+%.dc1: %.o $(DOBJECTS) $(DYNAMIC_LDS)
+ $(LD) $(DLDFLAGS) $< $(DOBJECTS) $(LIBS) -o $@ --oformat coff-h8300 -Ttext
$(BASE1)
-# How to make srec files of dynamic executables
-%.ds2: %.o $(DOBJECTS) $(DYNAMIC_LDS)
- $(LD) $(DLDFLAGS) $*.o $(DOBJECTS) $(LIBS) -o $@ -Ttext $(BASE2)
+%.dc2: %.o $(DOBJECTS) $(DYNAMIC_LDS)
+ $(LD) $(DLDFLAGS) $< $(DOBJECTS) $(LIBS) -o $@ --oformat coff-h8300 -Ttext
$(BASE2)
+
+# How to make srec files from coff files (twice, for makelx)
+%.ds1: %.dc1
+ $(OBJCOPY) -I coff-h8300 -O symbolsrec $< $@
+
+%.ds2: %.dc2
+ $(OBJCOPY) -I coff-h8300 -O symbolsrec $< $@
%.lx: %.ds1 %.ds2
$(MAKELX) $*.ds1 $*.ds2 $@
########################################
|
|
Message has 1 Reply: | | Re: brickOS and latest binutils
|
| (...) What's the change? Has the symbolsrec format reverted to the one used before? (...) Why a COFF guru? To understand the h8300-coff format? Sorry if these are stupid questions. Just curious. (22 years ago, 5-Dec-02, to lugnet.robotics.rcx.legos)
|
3 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|