Background It occurred to me recently that I never hear of anyone linking their programs manually - meaning, running ld directly rather than through a wrapper utility like the gcc or clang drivers. Given two simple translation units, I thought, one should be able to: invoke gcc with the -c flag, which skips the linking step and outputs the object files invoke ld with the object files, asking it po