首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从Perl调用C ++静态库?

如何从Perl调用C ++静态库?
EN

Stack Overflow用户
提问于 2019-03-21 00:15:05
回答 2查看 0关注 0票数 0

我正在编写一个C ++静态库,需要在多个应用程序之间共享,其中一个是用Perl编写的。不幸的是,我只知道核心的Perl语言(我读过Llama书),而且我并不熟悉它的库。如何从Perl脚本调用外部C ++二进制文件?

通过Google搜索,我在Perl Inline模块上找到了相关信息,但如果我理解正确,那就不是我需要的了。我很确定这是用于直接在Perl脚本中编写C和C ++代码,而不是用于调用外部C ++库。

C ++静态库正在为ARM处理器进行交叉编译,因此在运行Perl脚本的目标机器上将不会有C ++编译器。(如果这有所不同。)

EN

回答 2

Stack Overflow用户

发布于 2019-03-21 08:17:18

您可以通过Inline :: C调用其他库中的代码(也可能通过Inline :: CPP调用相同的代码) - 看看Inline :: C :: Cookbook。很可能你想从Inline开始,在你完成实验之后使用生成的.XS文件来进一步工作。

票数 0
EN

Stack Overflow用户

发布于 2019-03-21 10:06:27

您需要创建一个可以从perl和AFAIK调用的包装函数,您需要将此包装函数放在动态库中(除非您要重建perl二进制文件并将静态库链接到它)。我喜欢使用一个名为SWIG(Simple Wrapper Interface Generator)的工具为我创建包装器。它也可以为17种左右的其他语言创建包装器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100001026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档