其他分享
首页 > 其他分享> > R包和CRAN检查中的TMB c代码

R包和CRAN检查中的TMB c代码

作者:互联网

我正在研究一个R包,包括在TMB中创建的c模板.使用this suggestion中分享的有用指南,我设法走了很长的路.

目前,我正在使用2个c模板(“kglmer.cpp”和“nglmer.cpp”)和以下Makefile.win(和等效的Makefile)来创建dll:

all: kglmer.dll nglmer.dll

kglmer.dll: kglmer.cpp
    Rscript --vanilla -e "TMB::compile('kglmer.cpp', '-O1 -g',DLLFLAGS='')"
nglmer.dll: nglmer.cpp
    Rscript --vanilla -e "TMB::compile('nglmer.cpp', '-O1 -g',DLLFLAGS='')"

clean:
    rm -rf *o

但是,当运行CRAN检查(使用devtools :: check())时,我收到以下警告:

checking if this is a source package ...
     Subdirectory '/src' contains apparent object files/libraries
     kglmer.dll nglmer.dll
Object files/libraries should not be included in a source package.

该问题似乎与未正确清理src文件夹有关.您对如何进行有任何建议吗?

解决方法:

清洁目标应该与所有目标匹配,即在Makefile.win中你应该拥有

clean:
    rm -rf *.dll

标签:c,r,rcpp,tmb
来源: https://codeday.me/bug/20190827/1746176.html