Perl模块(.pm)如何调用相应的.so?

Lea*_*ing 1 perl

我刚刚编译并运行了一个hello world Perl扩展,但我不知道原理.如何.pm调用.so

Wla*_*ant 6

它不需要 - 二进制代码在模块的命名空间中定义了一些变量和函数,它们可以像常规变量一样使用.该.pm文件只需要确保.so在需要时加载.这是由DynaLoader模块完成的.通过继承DynaLoader自己,确保.so在类上调用未知方法时加载文件.

  • @Learning:对于模块`Foo::Bar`,文件是`auto/Foo/Bar.so` - 规则与`.pm` 文件几乎相同,但预先添加了`auto/` 目录。 (2认同)