If I understand the architecture correctly, there needs to be a reset vector placed at $FFFC and $FFFD in order for the processor to jump to the correct start routine.
There's an example of using cc65 to set the vectors using linker.cfg to choose the location of the VECTORS segment then assembling to that segment later on.