Компоновка

Предварительное разъяснение. В русскоязычной литературе используется много терминов для обозначения одного и того же. Компоновка (linking) может называться “связыванием”, “редактированием связей” и даже “линковкой”; компоновщик (linker) – “редактор связей” или “линкер”.

Основной источник для изучения темы – книга “Компьютерные системы: архитектура и программирование”, глава 7.
Отмечу бросающиеся в глаза недостатки перевода: “коверканье” (mangling) принято называть “декорированием” (стр. 631), а “переместимый” – “перемещаемым”.
В книге лишь вскользь упоминается о COMMON-символах, этот вопрос придется разбирать по лекционным конспектам.
Во втором издании книги, не переводившимся на русский, глава 7 осталась без изменений.

Дополнительные (и далеко выходящие за пределы данного лекционного курса) знания можно почерпнуть из Сети, а свободное чтение технического английского дает возможность знакомиться с оригинальными текстами.

  • Стандарт ELF следует читать в версии 1.2, т.к. предыдущая версия текста содержит очень обидные опечатки.
  • Динамическая компоновка, статья на сайте Symantec: часть 1 и часть 2, имеется перевод части этого материала на русский.
  • Динамические библиотеки в Linux, статья на сайте IBM: оригинал и перевод.