gcc — Как используются функции-заглушки в C ++, заменяются функциями общей библиотеки

Я новичок в том, как используются функции заглушки C ++.

Я прошел по ссылке Как создать заглушки для разделяемых библиотек в Linux но

1) Я не смог получить точный полный пример кода на C ++, в котором заглушки написаны на C ++. Если кто-то может указать мне на пример точного примера?

2) Также я смотрел, как именно заглушки заменяются функциями библиотеки с одинаковыми именами в Linux?

Будет полезно, если кто-то может помочь мне в моих двух вопросах.

0

Решение

Ответ на ваш вопрос приходит с пониманием черного искусства динамического связывания. Читать Ульриха Дреппера Как писать общие библиотеки для тщательного лечения предмета.

0

Другие решения

Чтобы ответить на ваши вопросы напрямую:

1) Заглушки не написаны на C ++. Заглушки создаются компоновщиком автоматически всякий раз, когда вы связываете программу с общей библиотекой. Они не связаны с каким-либо конкретным языком; компоновщик создает их как двоичные / ассемблеры непосредственно из каждого символа, основываясь исключительно на имени символа.

2) Динамический компоновщик заменяет / переписывает заглушки для вызова фактического кода динамической библиотеки, найденного во время выполнения.

0

По вопросам рекламы [email protected]