我要附加,分离和重新附加RODBC和data.table。当我按顺序对这些软件包执行此过程时,出现以下错误:
Error : .onLoad failed in loadNamespace() for 'data.table', details:
call: address(x)
error: object 'Caddress' not found
我正在使用这些软件包的最新版本。这是我的初始会话信息:
R version 3.1.0 (2014-04-10)
Platform: i386-w64-mingw32/i386 (32-bit)
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
例
pkgs <- c('RODBC', 'data.table') # Note, c('data.table', 'RODBC') will work
for (pkg in pkgs) library(pkg, character.only=TRUE)
for (pkg in paste0('package:', pkgs)) detach(pkg, unload=TRUE, character.only=TRUE)
for (pkg in pkgs) library(pkg, character.only=TRUE)
最佳答案
现在,此问题已在commit 1332的v1.9.3中修复。从NEWS:
添加了.onUnload
方法以正确卸载data.table
的共享库。由于共享库的名称是“ datatable.so”而不是“ data.table.so”,因此“ detach”无法正确卸载。这就是该问题在SO上报告here的原因。关闭#474。感谢Matthew Plourde的汇报。