inDL(x, as.逻辑(本地), as.逻辑(现在), ...) 中的错误:无法加载共享对象

2023-11-29

我在尝试附加包时遇到此错误tidyselect当试图打电话时tidyselect::any_function.

错误发生在Rstudio或类似的命令行,在RStudio当我输入以下内容时它就会被触发:tidyselect::, 尽管?tidyselect::工作正常,我可以寻求帮助?tidyselect::any_function.

这也有效:

packageVersion("tidyselect") # [1] ‘0.2.4

它曾经有效,我不明白发生了什么变化,我只知道包rjava已经安装了,管理员可能也改变了一些东西。

首先,弹出窗口显示:

无法在动态链接库 R.dll 中找到过程入口点 R_ContinueUnwind

然后控制台中会显示错误:

inDL(x, as.逻辑(本地), as.逻辑(现在), ...) 中的错误:

无法加载共享对象'//edited_UNC_path.com/edited_pa​​th/tidyselect/libs/x64/tidyselect.dll':

LoadLibrary 失败:找不到指定的过程。

The dll文件已存在 :

file.exists('//edited_UNC_path.com/edited_path/tidyselect/libs/x64/tidyselect.dll') # [1] TRUE

config :

sessionInfo()
R version 3.3.1 (2016-06-21)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

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     

loaded via a namespace (and not attached):
[1] tools_3.3.1

知道我该如何解决这个问题吗?


我不知道为什么会发生此事件,因为我目前面临同样的问题。无论如何我可以解释你的解决方案。

32 位与 64 位

您的系统是 64 位的,如您的sessionInfo(). i386该架构适用于 32 位旧系统(它们只能处理有限的内存,因为它们使用 32 位内存地址,而 64 位系统实际上是无限的)。

R 中会发生什么

R 中的一个经典安装是多架构的“multiarch”,这意味着 32 位和 64 位。在 64 位系统中构建 32 位软件没有问题。但是,您可能没有为这两种体系结构安装所有依赖项(例如 C++ 库)。显然您的 32 位安装有问题。然后安装包INSTALL_opts="--no-multiarch"仅安装 64 位版本(您需要的版本),没有任何问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

inDL(x, as.逻辑(本地), as.逻辑(现在), ...) 中的错误:无法加载共享对象 的相关文章

随机推荐