我创建了一个R包,我想提交给CRAN。它包含需要编译的代码(普通C),此代码依赖于libxml2
库。我目前的解决方案是让Linux和Mac用户安装libxml2-dev
包,这样他们就可以编译和安装R源包。对于Windows,我创建了一个特殊的二进制R包,其中包含所需的二进制依赖项。在阅读CRAN指南时,我发现只能上传源包,并且它们可能不包含任何二进制文件。
我的问题是:
答案 0 :(得分:3)
如上所述,您可以复制xml2包的功能:
要在Linux / MacOS上运行,请复制文件/src/Makevars.in
和-lxml2
。请注意,macOS默认包含libxml2的副本,因此您可以像在Linux上一样安全地链接到src/Makevars.win
。
对于Windows,需要从xml2复制文件tools/winlibs.R
和dependencies {
// Single target that includes all FirebaseUI libraries
compile 'com.firebaseui:firebase-ui:0.5.3'
}
。这是一个简单的脚本,可以在Windows上构建R包时自动下载并静态链接libxml2 from rwinlib。
这些构建脚本经过测试,几乎可以在任何平台上运行。