gpt4 book ai didi

c++ - 如何使用静态库编写 R 扩展

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:58:20 24 4
gpt4 key购买 nike

您好,我正在尝试使用预编译的静态库和单个头文件构建 R 包。这样做的最佳方法是什么?

因为我没有找到关于它的任何信息(仅关于创建从 src 编译的 R 包),所以我决定在扩展 src 目录中编写一个薄的 C++ 包装器类。我还将库所需的一个头文件添加到 src 目录,理论上现在可以链接到我计算机上的库(我估计)。但是,我想将静态库与我的包一起发送,这也应该使链接更容易(我可以将它硬编码到包目录)。

有什么想法吗?

谢谢

最佳答案

首先,任何包含已编译源代码的 R 扩展包都将被动态链接——因为 R 在运行时加载它。

也就是说,您的代码的任何外部 依赖项都可以静态链接到扩展包中。为此,您可以尝试在 PKG_LIBS 参数中列出静态库及其完整路径——以及强制执行静态链接的标准方法。

我暂时想不出使用这种方法的 CRAN 包示例,否则我会建议将其作为一个节。

关于c++ - 如何使用静态库编写 R 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6443027/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com