h8300-coff build error with gcc-3.5-20040704
James E Wilson
wilson@specifixinc.com
Tue Aug 3 18:15:00 GMT 2004
Nitin Shah wrote:
> I have taken following source code snapshots to build H8(COFF) toolchain,
-3.5-20040801/gcc/g++ -shared-libgcc
-B/home/nitins2/intmdt_build/h8300-coffbld3.5-20040801/build-gcc-3.5-20040801/gcc/
-nostdinc++
-L/home/nitins2/intmdt_build/h8300-coffbld3.5-20040801/build-gcc-3.5-20040801/h8300-coff/libstdc++-v3/src
-L/home/nitins2/intmdt_build/h8300-coffbld3.5-20040801/build-gcc-3.5-20040801/h8300-coff/libstdc++-v3/src/.libs
-B/home/nitins2/intmdt_share/gnuh8300_v0403_coff-1/h8300-coff/bin/
-B/home/nitins2/intmdt_share/gnuh8300_v0403_coff-1/h8300-coff/lib/
-isystem
/home/nitins2/intmdt_share/gnuh8300_v0403_coff-1/h8300-coff/include
-isystem
/home/nitins2/intmdt_share/gnuh8300_v0403_coff-1/h8300-coff/sys-include
-DHAVE_CONFIG_H -I.
-I/home/kpit/fsfsrc/downloads/gcc-3.5-20040801/libstdc++-v3/testsuite
-I..
-I/home/nitins2/intmdt_build/h8300-coffbld3.5-20040801/build-gcc-3.5-20040801/h8300-coff/libstdc++-v3/include/h8300-coff
-I/home/nitins2/intmdt_build/h8300-coffbld3.5-20040801/build-gcc-3.5-20040801/h8300-coff/libstdc++-v3/include
-I/home/kpit/fsfsrc/downloads/gcc-3.5-20040801/libstdc++-v3/libsupc++
-O2 -O2 -DCOFFPATCH -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0
-DLOCALEDIR="/home/nitins2/intmdt_build/h8300-coffbld3.5-20040801/build-gcc-3.5-20040801/h8300-coff/libstdc++-v3/po/share/locale"
-O2 -c -o testsuite_abi.o
/home/kpit/fsfsrc/downloads/gcc-3.5-20040801/libstdc++-v3/testsuite/testsuite_abi.cc
> /tmp/ccMZmwY1.s: Assembler messages:
> /tmp/ccMZmwY1.s:16: Error: junk at end of line, first unrecognized character is `i'
> 16 .def _long int <- error comes from here
The SDB/coff debug info support is broken. This is easy to see by
comparing against an older toolchain with working SDB/coff debug info,
or by looking at the assembler sources for this debug info format. The
.def pseudo-op takes only one argument, not two.
This is an obsolete debug info format. You can't describe C++, Ada, or
Java with it. You can't even fully describe ISO C89, it only supports
those types that are in K&R C.
The best solution is to stop using this obsolete format. Use stabs in
coff instead. You can do this by configuring with --with-stabs, or by
modifying the h8300.h port to set PREFERRED_DEBUGGING_TYPE to DBX_DEBUG.
If you want it fixed, then debug gcc to figure out what is wrong, or
submit a bug report, and hope someone looks at it.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com
More information about the Gcc
mailing list