解决Pycharm配置R语言环境报错RWrapper terminated, exitcode: 127

news/2024/10/6 4:42:15/文章来源:https://www.cnblogs.com/kingwz/p/18287527

问题

解决Pycharm配置R语言环境报错RWrapper terminated, exitcode: 127 error while loading shared libraries: libR.so: site:stackoverflow.com

解决方案

1. 打开GetEnvVars.R文件

打开 C:\Users\UserName\AppData\Roaming\JetBrains\PyCharm版本号\plugins\r-plugin\R\目录下的GetEnvVars.R文件。

  • 注:上面的UserName和PyCharm版本号按实际情况查找,如果没有找到,看下PyCharm的安装目录有没有...\plugins\r-plugin\R\GetEnvVars.R文件,不同版本路径可能有所区别

2.1 R版本大于3

如果R版本大于等于3,将内容替换成文件GetEnvVars.R的内容替换成:

#  Rkernel is an execution kernel for R interpreter
#  Copyright (C) 2019 JetBrains s.r.o.
#
#  This program is free software: you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation, either version 3 of the License, or
#  (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program.  If not, see <https:#www.gnu.org/licenses/>.getLDLibraryPath <- function() {sysinf <- Sys.info()if (sysinf['sysname'] == "Darwin") Sys.getenv("DYLD_FALLBACK_LIBRARY_PATH")else if (tolower(sysinf['sysname']) == "linux") {if(Sys.getenv("LDLIBRARY_PATH") == "") {sessinf <- sessionInfo()interpreter_lib_dir <- dirname(sessinf$BLAS)paste(interpreter_lib_dir, paste0(interpreter_lib_dir, "/R/lib"), sep = ":")} else {Sys.getenv("LDLIBRARY_PATH")}}else ""
}cat(">>>RPLUGIN>>>")
cat(R.home(), R.home('share'), R.home('include'), R.home('doc'), Sys.getenv("PATH"), getLDLibraryPath(), sep = '\n')
cat("<<<RPLUGIN<<<")

2.2 R版本低于3

如果R版本低于3,将内容替换成文件GetEnvVars.R的内容替换成:

#  Rkernel is an execution kernel for R interpreter
#  Copyright (C) 2019 JetBrains s.r.o.
#
#  This program is free software: you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation, either version 3 of the License, or
#  (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program.  If not, see <https:#www.gnu.org/licenses/>.getLDLibraryPath <- function() {sysinf <- Sys.info()if (sysinf['sysname'] == "Darwin") Sys.getenv("DYLD_FALLBACK_LIBRARY_PATH")else if (tolower(sysinf['sysname']) == "linux") {if(Sys.getenv("LDLIBRARY_PATH") == "") {sessinf <- sessionInfo()interpreter_lib_dir <- dirname(sessinf$BLAS)if (R.version$major <= 3)paste(dirname(dirname(interpreter_lib_dir)), interpreter_lib_dir, sep=':')else if (R.version$major > 3)paste(interpreter_lib_dir, paste0(interpreter_lib_dir, "/R/lib"), sep = ":")else ""} else {Sys.getenv("LDLIBRARY_PATH")}}else ""
}cat(">>>RPLUGIN>>>")
cat(R.home(), R.home('share'), R.home('include'), R.home('doc'), Sys.getenv("PATH"), getLDLibraryPath(), sep = '\n')
cat("<<<RPLUGIN<<<")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/739428.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux运维工程师推荐学习的开发语言

前言:会开发的运维和不会开发的运维可以说是两个世界的运维。 个人推荐python和go,前者可以做自动化运维,后者可以深挖k8s;最近就不先演示运维服务技术的部署和架构搭建了,在深挖自动化运维,为了让现在的工作更加高效和便捷。如果有需要了解的运维服务技术,可以评论说出…

2、flask-run启动参数详解

app.py 这里 app.run(True, port=5001, host=0.0.0.0) from flask import Flask#创建flask应用对象 app = Flask(__name__)@app.route(/) # 路由 def hello_world(): # 视图函数return Hello World! # 响应给前端#添加路由和视图函数 @app.route(/index/) def index():…

从零学习的JAVAday1~day7

作为一个刚要迈入大二的预备程序员,已经学习过了c语言和c++的部分知识,在暑假期间满怀期待的开始Java的学习,希望一个暑假可以对Java的了解加深一些。 学习Java首先要学习windows电脑的cmd命令: 同时点击键盘上面的win+r键输入cmd即可进入默认的cmd面版,然后我们就可以输入…

面试官:Java线程可以无限创建吗?

哈喽,大家好🎉,我是世杰。 ⏩本次给大家介绍一下操作系统线程和Java的线程以及二者的关联1. 面试连环callJava线程可以无限创建吗? Java线程和操作系统线程有什么关联? 操作系统为什么要区分内核态和用户态?⏩要想解答这些问题,我们要先从操作系统线程开始说起,让我们…

标准IO与系统IO

C平台的标准IO(可跨系统)Linux 系统IO (Linux系统平台才能使用)Linux系统的IO(输入输出)特点主要包括以下几个方面 1)文件视为一切:在Linux中,几乎所有的设备和资源都被视为文件。这意味着无论是硬件设备(如磁盘、网络接口)还是系统资源(如进程、内存),它们都可以通…

比snipaste更好用的截图工具 pixpin

pixpin官网功能介绍与 snipaste 的功能相似,比snipaste好用作者:mohistH 出处:https://www.cnblogs.com/pandamohist/ 本文版权归作者和博客园共有,谢绝一切形式的转载,否则将追究法律责任。

HT-014 Div3 扫雷 题解 [ 绿 ] [ 二维差分 ]

分析 观察到是曼哈顿距离 \(\le r\) 的范围可以扫到,联想到如下图形:左边是 \(r=1\) 可以扫到的范围,右边是 \(r=2\) 可以扫到的范围。 于是,我们只要对这样的图形在 \(1000*1000\) 的格子里差分一下就好了 。 但这样的复杂度是 \(O(nm)\) 的,会死的很惨。 优化 不难发现这…

[VSCode] Add all missing import

https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_46.md#add-all-missing-imports-source-action

秒杀圣经:10Wqps高并发秒杀,16大架构杀招,帮你秒变架构师

文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,…

《从零开始学习Python爬虫:顶点小说全网爬取实战》

文章优势:最新内容更新:最近几天整理,包含最新的爬虫技术和实践经验。 精致内容汇总:基于培训课程笔记,内容丰富、详细,适合初学者入门及进阶。顶点小说 装xpath helper GitHub - mic1on/xpath-helper-plus: 这是一个xpath开发者的工具,可以帮助开发者快速的定位网页元素…

LRU算法简介

LRU(Least Recently Used,最近最少使用)算法是一种常用于缓存管理的算法,用于在缓存空间有限的情况下,决定哪些数据应该被移除。它的基本思想是:如果一个数据最近被访问过,那么在将来一段时间内它被再次访问的概率较高。因此,当缓存已满,需要移除数据时,优先移除那些…

数据结构小学期第六天

今天完全实现了九宫格拼图游戏,具备一键通关功能按下W键,查看原图功能按住A键不松,移动图片按上下左右键,如果你自己想要实现这个功能,需要自己的图片,图片格式要求。 每个小图片是105*105,完整图片是315*315.有人想要做一下,可以试一试。代码如下 启动类1 import com.…