Есть ли способ реализовать связывание объектных файлов в C таким образом, чтобы определенные объекты могли быть только связаны друг с другом?
Например. Попытка связать Объект 1 и Объект 2 сработает и создаст работающий исполняемый файл, но попытка связать Объект 1 и Объект 3 либо вернет ошибку, либо результирующий исполняемый файл будет работать неправильно.
Справочная информация: По сути, программист А и программист Б отправляют свои объекты в компоновочную компанию. A и B хотят гарантировать, что компания Linker может только связывать свои объекты вместе, а не связывать свои объекты с объектами других программистов (например, программиста C и т. д.) (поскольку это было бы незаконно).
Ответ Йоргена Сигвардссона полезен, но мне интересно, есть ли более надежный метод. Например. При попытке связать незаконные объекты вместе с помощью gcc компоновщик может определить, какие символы требуются, и просто добавить их к незаконным объектам, легко обойдя ограничение.