Перейти к содержимому
шпаргалка.
Esc
навигацияоткрыть⌘Jпредпросмотр
На этой странице

Линковка

Все темы C++ Developer

Что именно компонует линкер?

Линкер в программировании — это инструмент, который объединяет различные объектные файлы и библиотеки в один исполняемый файл или библиотеку. В процессе компоновки линкер выполняет следующие задачи:

  1. Разрешение ссылок: Линкер связывает внешние и внутренние ссылки между различными объектными файлами. Он ищет и соединяет вызовы функций и доступы к переменным с их определениями.

  2. Объединение сегментов: Собирает однотипные сегменты кода и данных из разных объектных файлов в единые секции исполняемого файла.

  3. Оптимизация: Удаляет избыточный код и данные, которые не используются в конечном приложении (dead code elimination).

  4. Динамическая компоновка: Для динамических библиотек (DLL, SO) линкер организует таблицы импорта и экспорта, которые используются при загрузке библиотек в память во время выполнения программы.

Результатом работы линкера является исполняемый файл или библиотека, готовые к запуску на целевой машине.

Эта страница была полезной?