2011-07-18 4 views
4

이 모듈의 기능은 Dynamically load C libraries into Perl code입니다.DynaLoader의 C 라이브러리는 어떻게로드 되었습니까?

하지만 Perl에 처음로드 된 자체 C 라이브러리는 어떻습니까?

+1

두 번째 목적은 모듈의 라이브러리에서 C 레벨 함수에 대한 perl 바인딩을 만드는 것입니다. 정적으로 링크 된 모듈의 경우 보조 용도 만 적용됩니다. – ysth

답변

7

Dynaloader 정적에 의해 관리 (펄에 연결되어 있습니다 ...

나는 내가 바로 DynaLoader.pm 내부의 기능 dl_load_file을 찾을 수없는 있기 때문에 자신의 C 라이브러리가 있어야 판단, 그래서 일부 C 라이브러리에 있어야합니다 구성), 항상 사용할 수 있도록하십시오. 자체적으로로드 할 수 있어야하는 경우 제대로 작동하지 않습니다.

Dynloader의 소스는 /ext/Dynaloader/ in the Perl distribution입니다. 여기에는 Perl이 실행될 수있는 다양한 아키텍처에 대한 dl_load_file의 다양한 구현이 포함되어 있습니다.

그래, dl_load_file은 라이브러리에 있지만 perl이 빌드 될 때 perl 내에서 끝납니다.

+1

동적로드가 해제 된 perl을 빌드하지 않는 한 – ysth

관련 문제