RCpp 临时构建位置
RCpp Temporary Build Location
我工作的环境中 link 动态库仅限于某些位置。当我使用 RStudio 并请求一个新的 C++ 文件时,我得到了 "Hello World" 模板。当我尝试通过单击 RStudio 中的 "Source" 来编译它和 link 时,我收到一个错误:
LoadLibrary failure: Access is denied.
此错误是因为该库位于不允许加载 DLL 文件的 space 中。为了绕过这个限制,我想确定如何告诉 RCpp 将临时 dll(不在包中)放置在特定位置。
我知道 Dirk 建议这不在 RCpp 的范围内,所有代码都应该放在包中,但这对这里的用户来说不是最友好的环境。我怀疑大多数人会使用 GIT 的 RStudio 项目。
那么,话虽这么说,是否有一个环境变量,我可以修改它以使 RCpp 将临时 dll 文件放置在特定位置。或者我可以使用其他一些机制来改变它吗?
尝试设置 R 所尊重的 TMPDIR
。这确实不是 Rcpp 问题,而是一般的 R CMD build
/ R CMD INSTALL
问题。
来自help(tempfile)
:
The environment variables TMPDIR
, TMP
and TEMP
are checked in
turn and the first found which points to a writable directory is
used: if none succeeds /tmp
is used.
PS Rcpp 小写 C.
我工作的环境中 link 动态库仅限于某些位置。当我使用 RStudio 并请求一个新的 C++ 文件时,我得到了 "Hello World" 模板。当我尝试通过单击 RStudio 中的 "Source" 来编译它和 link 时,我收到一个错误:
LoadLibrary failure: Access is denied.
此错误是因为该库位于不允许加载 DLL 文件的 space 中。为了绕过这个限制,我想确定如何告诉 RCpp 将临时 dll(不在包中)放置在特定位置。
我知道 Dirk 建议这不在 RCpp 的范围内,所有代码都应该放在包中,但这对这里的用户来说不是最友好的环境。我怀疑大多数人会使用 GIT 的 RStudio 项目。
那么,话虽这么说,是否有一个环境变量,我可以修改它以使 RCpp 将临时 dll 文件放置在特定位置。或者我可以使用其他一些机制来改变它吗?
尝试设置 R 所尊重的 TMPDIR
。这确实不是 Rcpp 问题,而是一般的 R CMD build
/ R CMD INSTALL
问题。
来自help(tempfile)
:
The environment variables
TMPDIR
,TMP
andTEMP
are checked in turn and the first found which points to a writable directory is used: if none succeeds/tmp
is used.
PS Rcpp 小写 C.