c compilation process