为Linux创建R二进制包,可以安装在不同的机器上?

Vin*_*yen 11 linux binary ubuntu r package

我很确定这是不可能的,因为如果是,那么CRAN将拥有R Linux二进制包.为什么不可能?我们可以创建R包的Mac和Windows二进制版本,这些tgz/zip文件可以安装在不同的系统上.为什么我们不能为Linux做同样的事情?

我猜是因为有很多不同的发行版,每个发行版都不同.是否可以为Debian/Ubuntu和RHEL/CentOS创建二进制文件?

如果有可能,我们该怎么做?谢谢.

Dir*_*tel 14

不同的编译器版本,不同的libc/libstc ++版本,不同的"其他库"版本,不同的每个发行版本周期......使得您无法将该目标与动态链接相匹配.

你可以在那里中途,例如RStudio通过a)捆绑你所有的依赖和b)反映子集,就像他们为Debian/Ubuntu和RH/FC/CentOS做的那样.但是,a)tarball会变得庞大,就像静态链接一样.

简而言之:你不能在Linux上.所以回到消息来源.

  • 是的你可以.曾经有一个服务(谷歌"cran2deb"),我们正在尝试重建一个.但它不会"很快"准备就绪.但是你可以在本地代理它. (4认同)
  • @Dirk我们正在使用Docker使用摇杆/闪亮(`debian:testing`)部署Shiny应用程序.由于包编译,构建时间很长.鉴于目标Linux系统总是相同的,有没有办法用我们特定Linux版本的预编译包创建我们自己的CRAN镜像.或者是否有类似的解决方案可以达到同样的目标?谢谢! (3认同)
  • @DirkEddelbuettel在哪里可以跟踪您上面提到的工作进展? (2认同)