通过install.packages()生成用于安装的R包
通过通过install.packages()生成用于安装的R包,r,R,通过R CMD install和install.packages()安装的.tar.gz或.tgz文件之间有什么区别?我已经用R CMD build制作了一个示例软件包,目前我可以用R CMD install mypackage.tar.gz安装它,它运行良好。我希望能够通过install.packages()函数安装它(调用install.packages(“mypackage.tar.gz”,repos=NULL))。我还需要采取哪些步骤?我认为.tgz是OS X上的二进制软件包,就像win
R CMD install
和install.packages()安装的.tar.gz
或.tgz
文件之间有什么区别?我已经用R CMD build
制作了一个示例软件包,目前我可以用R CMD install mypackage.tar.gz
安装它,它运行良好。我希望能够通过install.packages()
函数安装它(调用install.packages(“mypackage.tar.gz”,repos=NULL)
)。我还需要采取哪些步骤?我认为.tgz
是OS X上的二进制软件包,就像windows获得二进制.zip
一样。任何一个结果都来自R CMD build
因此,当您编写“已使用R CMD build
制作了一个示例包,当前我可以使用R CMD install mypackage.tar.gz
安装该示例包”时,您是不一致的,因为.tar.gz
是R CMD build
步骤的源和结果。从.tar.gz
源代码开始,确保R CMD检查
和R CMD安装
对它们进行操作,然后尝试R CMD binary
最后,对于install.packages()
您需要由R CMD build--binary
创建的二进制软件包和一个包含文件packages
等的基于web的存储库,正如帮助(install.packages)
所说,有关如何设置存储库的信息,请参阅R安装和管理手册。这取决于您的操作系统。在Linux上,您可以使用指定的命令安装.tar.gz包。如果您使用的是Mac OS X,则需要指定您是从源软件包而不是二进制软件包安装的(请参阅?Mac上的install.packages)。正如Dirk所说,.tgz包是Mac的二进制版本,您可以在Mac上构建它们
如果要为Windows构建软件包,请参阅,这是一个用于从源代码构建二进制软件包的web服务
如果您计划将软件包提交给CRAN,但wan不需要测试,请先查看,您可以从源(.tar.gz)通过指定repos=NULL的本地目录安装软件包。所以你实际上不需要一个二进制文件和一个网络回购协议。我刚刚测试过它在Ubuntu上运行。谢谢-区别在于我的tar.gz文件是源文件而不是二进制文件,正如你所建议的,我的getOption(“pkgType”)是二进制文件。谢谢!install.packages上的type
参数正是我要找的!(因为我在Mac电脑上)