How to get crt0.o without syscalls
Jeff Johnston
jjohnstn@redhat.com
Mon Oct 17 18:31:00 GMT 2005
Randall Nortman wrote:
> I am trying to compile newlib-1.13.0 for an ARM target. I designed
> the hardware myself and am not running an operating system, so the
> supplied syscalls are unlikely to work (right?). However, browsing
> through the crt0.S code, it looks quite suitable, assuming that
> neither ARM_RDP_MONITOR nor ARM_RDI_MONITOR are defined and that I
> provide an appropriate value for __stack. (I'm not even sure what
> those are for -- emulators of some sort?) I configured newlib with
> --disable-newlib-supplied-syscalls, which prevents it from defining
> ARM_*_MONITOR and also, I assume, does not compile any of the
> syscalls. However, doing this also prevents crt0.o from being built.
> Can I have one without the other? (Of course, I could just copy
> crt0.S to my project directory and compile it myself, but what's the
> "right" way to do this?)
>
When you specify --disable-newlib-supplied-syscalls, the code in
libgloss/arm is still compiled and there is a crt0.o there.
> Also, should I be using the CVS code instead of 1.13.0? There hasn't
> been a release in a while; do most folks just use CVS snapshots?
>
I suggest using CVS. The 1.13.0 code is just a snapshot of CVS and you
will end up missing out on latest fixes. The next shapshot release:
1.14.0 will be sometime in December and will be based on the current CVS
sources.
> TIA,
>
More information about the Newlib
mailing list