Subject: compile error at src/lib/csu/sparc64/crt0.c::___start
To: None <eeh@netbsd.org>
From: FUKAUMI Naoki <naoki@fukaumi.org>
List: tech-toolchain
Date: 04/02/2002 13:05:29
At 29 Mar 2002 22:16:15 -0000,
eeh@netbsd.org wrote:
> Old versions of egcs and binutils did strange things.
>
> The linker defaults to using `_start'. Our gcc changes that to `__start'.
>
> I suppose `start' can be removed now we're using a semi-sane toolchain.
I couldn't compile src/lib/csu/sparc64/crt0.c at Apr 1 source.
Error message:
(cd /usr/src/lib/csu && /home/tools/bin/nbmake dependall)
dependall ===> sparc64
/home/tools/bin/sparc64--netbsd-gcc -O -ffixed-g4 -fPIC -mcmodel=medlow -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Wreturn-type -Wpointer-arith -Wswitch -Wshadow -Werror -I- -I/usr/src/lib/csu/sparc64/../sparc_elf -DLIBC_SCCS -DPIC -DDYNAMIC -DELFSIZE=64 -I/usr/src/lib/csu/sparc64/../../../libexec/ld.elf_so -I/usr/src/lib/csu/sparc64/../common_elf -I/usr/src/lib/csu/sparc64/../../libc/dlfcn -DDWARF2_EH -DJCR -DDSO_HANDLE -nostdinc -isystem /home/d/usr/include -c -DCRT0 /usr/src/lib/csu/sparc64/crt0.c -o crt0.o
cc1: warnings being treated as errors
/usr/src/lib/csu/sparc64/crt0.c:74: warning: `___start' defined but not used
*** Error code 1
Stop.
Is 'static' needed?
--- lib/csu/sparc64/crt0.c.orig Tue Apr 2 12:44:00 2002
+++ lib/csu/sparc64/crt0.c Tue Apr 2 12:44:50 2002
@@ -66,10 +66,10 @@
mov %g1, %o3 ! ps_strings XXXX\n\
");
-static void ___start __P((char **, void (*cleanup) __P((void)), const Obj_Entry *,
+void ___start __P((char **, void (*cleanup) __P((void)), const Obj_Entry *,
struct ps_strings *));
-static void
+void
___start(sp, cleanup, obj, ps_strings)
char **sp;
void (*cleanup) __P((void)); /* from shared loader */
--
FUKAUMI Naoki