What is the reason for some gcc options to start with two dashes? Are single and double dash interchangeable? For example, https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html lists -specs=file, but exit.c:(.text+0x18): undefined reference to `_exit' when using arm-none-eabi-gcc refers to --specs=nosys.specs.