Один из примеров - когда вы ссылаетесь на внешние предварительно скомпилированные библиотеки, например:
$ gcc -c myfile.c
$ gcc myfile.o precompiled_object.o -lprecompiled_lib
Два шага могут происходить в разных частях конвейера сборки или в разных конвейерах / компонентах ( например, myfile.o может быть повторно использован для производства различных продуктов, что на самом деле является еще одним вариантом использования).
Другой пример - когда вы не тот, кто выполняет связывание, например, вы предоставляете объектные файлы и стороннюю организацию. делает ссылку.
Другой пример - когда вы хотите только проверить свой код (текущий файл), а не (пере) построить весь проект, что может занять много времени.