我正在写一个R包,它取决于许多其他包.当我在会话中加载太多包时,我经常遇到这个错误:
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/Library/Frameworks/R.framework/Versions/3.2/Resources/library/proxy/libs/proxy.so':
`maximal number of DLLs reached...
Run Code Online (Sandbox Code Playgroud)
这篇文章超过了R中最大的DLL数量,指出问题与基本R代码的Rdynload.c有关:
#define MAX_NUM_DLLS 100
除了从源代码修改和构建之外,有没有办法绕过这个问题?
在Windows上安装Rcpp软件包时,需要确保卸载软件包DLL,或者在复制新DLL时出现"Permission Denied"错误.这意味着每次重新编译都会重新启动R,这非常烦人.有没有办法卸载包DLL而不杀死R?
我已经尝试过该detach("package:my_package", force=TRUE)命令,但它没有卸载DLL.