从.tar.gz linux创建R Windows二进制文件

时间:2013-05-25 01:09:49

标签: r cross-compiling

这与我之前的帖子有关。我需要在我的32位Windows PC上使用bigmemory库来进行一些丑陋的矩阵计算。不幸的是,似乎维护者暂时停止了Windows二进制文件的生成。我的家用电脑上有Ubuntu。我真的想把.tar.gz文件构建成一个我实际可以在工作中运行的Windows二进制文件。我意识到有更有效的方法,比如在Windows设备上安装RTools。但是,我们的IT保留了我们的锁定管理权限,因此我永远无法编辑我的PATH enviro变量。这样做有人可以提供一些一般指导吗?我需要在我的Ubuntu PC上安装除R以外的任何工具吗?

我发现了类似的问题,但没有完全回答我的问题。

2 个答案:

答案 0 :(得分:3)

除非包源与R的当前版本不兼容,否则可以使用R项目的win-builder site来构建Windows二进制文件。从链接网站引用,win-builder是一项服务:

  

旨在用于没有Windows可用于检查和构建Windows二进制包的用户。

为方便起见,Hadley Wickham的 devtools 程序包包含一个实用程序函数build_win(),您可以将其用于此目的。来自?build_win

  

通过构建源包工作,然后上传到http://win-builder.r-project.org/>。构建完成后,您将在维护者字段中列出的电子邮件地址中收到指向已构建包的链接。通常需要大约30分钟。

答案 1 :(得分:2)

Windows有四组环境变量(系统,用户,易失性和进程集)。前三个集存储在注册表中,但是进程集不是这样,即使它们已经锁定了注册表,它通常仍然可以在本地进程中设置进程环境变量(包括PATH),即临时的,所以你可以仔细检查一下你不能修改任何东西的假设。您更有可能无法修改系统变量和注册表,但仍可以修改本地进程中的集。要从Windows cmd行进行检查,请输入:

set mytest=123
set mytest

如果第二行显示mytest的值为123,那么您可能拥有所需的所有权限。

此外,您需要设置的所有内容都由batchfiles distribution中的R.bat自动处理,因此您无需自行设置任何内容。

确保将Rtools和R安装到标准位置(您可以告诉他们在安装过程中跳过任何注册表项的设置),确保R.bat位于您的路径或当前目录中并运行:

R.bat CMD INSTALL mypackage.tar.gz

不设置环境变量,注册表项或路径。

如果这不起作用,请尝试Rpathset.bat来自非自动的批处理文件,如R.bat,但另一方面非常灵活,因为您必须将其中的SET语句修改为您想要的任何内容。

批处理文件附带的PDF文档提供了更多信息。