Как загружается библиотека c DynaLoader? - PullRequest
4 голосов
/ 18 июля 2011

Мы знаем, что функция этого модуля Dynamically load C libraries into Perl code.

Но как его собственная библиотека c загружается в Perl?

Я считаю, что она должна иметь свою собственную библиотеку c, потому чтоне найти функцию dl_load_file прямо внутри DynaLoader.pm, поэтому она должна быть в какой-то библиотеке c ...

1 Ответ

7 голосов
/ 18 июля 2011

Dynaloader статически связан с Perl (управляется Configure), поэтому он всегда доступен.Это не сработало бы очень хорошо, если бы он был доступен сам для загрузки.

Источник для Dynloader находится по адресу / ext / Dynaloader / в дистрибутиве Perl , который содержит числоразличных реализаций dl_load_file для различных архитектур, на которых может работать Perl.

Так что да, dl_load_file находится в библиотеке, но он заканчивается внутри perl, когда perl создается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...