RCpp临时建设地点

时间:2015-12-08 17:58:23

标签: r rcpp rcpp11

我在一个将动态库链接限制在某些位置的环境中工作。当我使用RStudio并请求一个新的C ++文件时,我得到了#34; Hello World"模板。当我尝试编译并通过点击"来源"在RStudio中,我收到一个错误:

LoadLibrary failure: Access is denied.

此错误是因为库位于不允许加载DLL文件的空间中。为了解决这个限制,我想确定如何告诉RCpp将临时dll(不在包中)放在特定位置。

我知道Dirk已经建议这不在RCpp的范围内,并且所有代码都应该包含在软件包中,但这对用户来说不是最友好的用户环境。我怀疑大多数人会在GIT上使用RStudio项目。

所以,那就是说,是否有一个环境变量,我可以通过它来让RCpp将临时的dll文件放在特定的地方。或者是否有其他机制可以用来改变它?

1 个答案:

答案 0 :(得分:3)

尝试设置R尊重的TMPDIR。这确实不是Rcpp问题,而是通用R CMD build / R CMD INSTALL问题。

来自help(tempfile)

  

检入环境变量TMPDIRTMPTEMP        转,第一个找到哪个指向可写目录        used:如果没有成功,则使用/tmp

PS Rcpp,小写C。