Just the throw this out there as I already use C and know a lot about it....
There are a few C compilers to use. You must likely have to make your own glue functions to interface with TIOS. That means that you need to convert that compiler's register/stack usage into b_call's.
z88dk already has functions ready to use, but is huge. If you want to make super-tiny programs in C for the ti83p right away, shell or no shell, then z88dk is there.
small-c has many differences from normal C and some things may be done differently. I didn't like the C style in it, so I have no experience.
SDCC is what I use for the optimizing abilities, ansi c89/c99 compliance, and its own libc. You will need to make glue functions for this, too, but the output code size is smaller than z88dk and allows high-level printf with floats to low level hardware access.
The output files for the compilers is usually similar. .ihx/.bin is the binary output. If you want to make programs with C in TIOS, then have fun depending on the compiler.
(Because I am magnatized to C on z80 threads, I simply will note) GlaßOS is a nice example of SDCC being used to write a replacement OS for the ti84pse, already with programs dealing with filesystem access, minimal CAS usage, greyscale and USB support. The reason to note this is if you want to do a lot of C coding on a calc, then note that TIOS doesn't have a libc on it. Each compiler has its own functions and will put them in every program you build. GlaßOS has this library in it already plus more in order to make C programs much smaller. That's my pointer about size outputs, but it isn't impossible to use C on a calc.
<edit> That missing file is the calc's crt0, as it seems. That's just an asm file that contains the program's header and code layout that is compiled into a .rel and linked to your code output. Since each compiler is different, you will need to modify the ti83 version to work with the ti83p.