How to get crt0.o without syscalls (solved?)
Randall Nortman
newliblist@wonderclown.com
Thu Oct 20 14:39:00 GMT 2005
On Mon, Oct 17, 2005 at 05:39:31PM -0400, Jeff Johnston wrote:
> Randall Nortman wrote:
> >On Mon, Oct 17, 2005 at 11:45:05AM -0400, Jeff Johnston wrote:
> >[...]
> >
> >>When you specify --disable-newlib-supplied-syscalls, the code in
> >>libgloss/arm is still compiled and there is a crt0.o there.
> >
> >
> >This does not seem to be the case in 1.13.0. I get rdimon-crt0.o,
> >rdpmon-crt0.o, and redboot-crt0.o, but I'm not using any of these
> >monitors. I will try with the CVS code when I have some time, since
> >apparently I ought to be using that anyway.
>
> The missing crt0.o appears to be a typo on my part. The crt0.o is only
> being built when newlib-supplied-syscalls are enabled, but this doesn't
> make sense since libc/sys/arm provides a crt0.o in that case. I have
> just made a patch to the CVS sources. Please try it out.
One more thing has to be done to libgloss/arm/configure.in; the
AC_SUBST macros for the relevant variables are missing, and so they
are never substituted in the Makefile. Just add these lines and I
think it will work:
AC_SUBST(BUILD_CRT0_TRUE)
AC_SUBST(BUILD_CRT0_FALSE)
I tried this myself but couldn't manage to regenerate configure from
configure.in ("aclocal && autoconf" didn't work), so I just
hand-edited configure and added the substitution code, and then
everything worked.
More information about the Newlib
mailing list