C / C ++.Преимущества библиотек перед комбинированными объектными файлами

Хотя обычным делом является объединение нескольких объектных файлов в библиотеке, возможно (по крайней мере в Linux) объединить несколько объектных файлов в другой объектный файл.

( См. объединение двух скомпилированных GCC объектных файлов .o в третий .o-файл )

Поскольку есть недостатки использования библиотек вместо просто объединенных объектных файлов:

1: легче работать только один тип файла (объекта) при компоновке, особенно если все файлы делают одно и то же.

2: При компоновке (по крайней мере, в GCC) библиотеки (по умолчанию) должны быть упорядочены и не могут обрабатывать циклические зависимости.

Я хочу знать, какие преимущества есть у библиотек (помимо уловки 22, что они используются много раз).

После некоторого времени поисков единственное объяснение, которое я получаю, похоже, состоит в том, что отдельные библиотеки лучше, чем несколько объектных файлов.

9
задан Community 23 May 2017 в 11:46
поделиться