在Linux下给R访问一个DLL

我有一个在Windows中开发的R脚本,它需要一个特定的DLL在path中,因为它使用了一些函数(通过dyn.load函数)。

是否有可能使脚本在Linux下工作? 也许用酒?

假设你有非R代码的源代码,我认为你最好的选择是在Linux下编译代码,例如使用gcc编译器创建共享库( .so文件)并将其加载到R.如果你把你的代码(R代码和其他源代码)在一个R包中,你可以集成R代码和其他源代码,这样它们就可以一次安装,源代码在飞行中编译。


你没有源代码的事实使得事情变得相当复杂。 这个SO帖子:

从Linux使用Windows DLL

向我建议,你想要的不是微不足道的。 一种选择是在Windows虚拟机中运行dll。 然后你使用例如Tcp / ip来交流你的机器上运行的DLL。 所以取决于你愿意走多远,这可能是一个解决方案。 以上帖子的答案也表明,葡萄酒不能提供令人满意的解决方案,但是这个帖子还是比较陈旧的,所以葡萄酒可能会在此期间得到改善。