如何从现有的R包中获取Makefile?

如何从现有的R包中获取Makefile?,r,makefile,packages,R,Makefile,Packages,我喜欢R中的GBM包 我无法让R的内存管理与我的机器/数据集/所需任务的组合一起工作,原因已在其他地方介绍过,在本问题中应视为离题 我想从R中删除GBM算法,并将其重建为独立代码 不幸的是,包tarball中没有Makefile,或者我见过的任何R包tarball。有没有一个地方可以让我查找R包的直接makefile?或者我真的必须回到原点,为漫长而痛苦的旅程编写自己的Makefile吗?正如亨利·斯宾塞(Henry Spencer)打趣的那样:那些不懂Unix的人注定要彻底改造它,糟糕透顶 R

我喜欢R中的GBM包

我无法让R的内存管理与我的机器/数据集/所需任务的组合一起工作,原因已在其他地方介绍过,在本问题中应视为离题

我想从R中删除GBM算法,并将其重建为独立代码


不幸的是,包tarball中没有Makefile,或者我见过的任何R包tarball。有没有一个地方可以让我查找R包的直接makefile?或者我真的必须回到原点,为漫长而痛苦的旅程编写自己的Makefile吗?

正如亨利·斯宾塞(Henry Spencer)打趣的那样:那些不懂Unix的人注定要彻底改造它,糟糕透顶

R包没有Makefile,因为R在构建包时会动态创建一个Makefile,使用当前R安装的默认值和包中的设置,通常通过文件Makefars


运行通常的命令R CMD INSTALL foo_1.2.3.tar.gz,您将在构建过程中看到生成的Makefile的效果。最糟糕的情况是,您总是可以从复制和粘贴开始。

正如亨利·斯宾塞(Henry Spencer)打趣的那样:那些不懂Unix的人注定要彻底改造它,而且很糟糕

R包没有Makefile,因为R在构建包时会动态创建一个Makefile,使用当前R安装的默认值和包中的设置,通常通过文件Makefars


运行通常的命令R CMD INSTALL foo_1.2.3.tar.gz,您将在构建过程中看到生成的Makefile的效果。最糟糕的情况是,你可以从复制和粘贴开始。

你也可以看看CMake,它可以很容易地为你创建Make文件。我花了最少的时间让它为我的一个项目工作。

你也可以看看CMake,它可以很容易地为你创建Make文件。我花了很短的时间才为我的一个项目工作。< / P >很多人都很欣赏R。它是一个很好的工具,在所有情况下都可能不太有效,在这种情况下,你可以求助于C++。在没有任何解释的情况下,抛开这些严厉的指控,我们帮助您的机会非常小,即-1…看看ff这样的软件包,以获得更紧凑的存储。R不可能需要4Gb的RAM来存储350Mb的未签名字符。我向您展示了避免创建副本的方法,这可能是您遇到的问题。在我的回答中,我读取了700Mb的CSV,最多使用1.5Gb的RAM。你需要提供一些证据,然后我才会相信需要超过2倍的RAM才能存储一半的数据。@JoshuaUlrich,可能还需要调用垃圾收集器来释放多余的700 mb。我使用了>2GB的二进制文件,并迭代计算了协方差矩阵。所以一个350 gb的文件应该是可行的。@Stephan:对不起,但我想要可复制的证据,而不是故事。再次,我在前面的问题中显示,你可以读取700兆字节的数据2E8 3位整数作为数字,而只使用最多1.5 GB的RAM,对象只花760MB存储一次它被读入。很多真的欣赏R。它是一个很好的工具,它可能在所有情况下都不能最佳工作,在这种情况下,可以变成例如C++。在没有任何解释的情况下,抛开这些严厉的指控,我们帮助您的机会非常小,即-1…看看ff这样的软件包,以获得更紧凑的存储。R不可能需要4Gb的RAM来存储350Mb的未签名字符。我向您展示了避免创建副本的方法,这可能是您遇到的问题。在我的回答中,我读取了700Mb的CSV,最多使用1.5Gb的RAM。你需要提供一些证据,然后我才会相信需要超过2倍的RAM才能存储一半的数据。@JoshuaUlrich,可能还需要调用垃圾收集器来释放多余的700 mb。我使用了>2GB的二进制文件,并迭代计算了协方差矩阵。所以一个350 gb的文件应该是可行的。@Stephan:对不起,但我想要可复制的证据,而不是故事。同样,我在上一个问题中显示,您可以读取700Mb的数据2e8 3位整数作为数字,而最多只使用1.5Gb的RAM,并且对象在读入后只需要760Mb的存储空间。谢谢Dirk。将从那里开始,并尽量不使改造太差-谢谢你,德克。将从那里开始,并尽量不使改造太差-