The linker (ld) is invoked to combine sumFirst.o with a C runtime object file (crt.o) and pre compiled object code for C library functions such as printf.o to produce an executable file containing the same machine code instructions, but with address references to printf, etc., fixed to their actual offsets within the executable.