When developers build large-scale applications or system utilities, they compile them in one of two ways: