LD_LIBRARY_PATH 优先级和编译问题

2024-02-26

我正在尝试在Linux机器上安装一些软件(python的rpy2包,特别是rpy2.robjects,如果重要的话)。我需要该软件在我的本地空间中查找其共享库,而不是在 /usr/lib64 等全局空间中查找。我没有这台机器的管理员权限。我的问题是,即使我将 LD_LIBRARY_PATH 设置为指向我的本地空间,该软件仍然会转到 /usr/lib64/whatever,在那里它会找到过期的库。这些库缺少它需要的一些对象,因此失败。什么可能优先于 LD_LIBRARY_PATH,有没有办法更改/删除它?谢谢。

顺便说一句,该网站上的某人一年或更长时间前有过类似的问题,但他的答案涉及环境变量 RPATH,并使用 chrpath 实用程序更改它。我根本不清楚 rpy2 正在使用 RPATH,并且 chrpath 在我的系统上似乎不可用。

附录:我尝试使用 LD_DEBUG=libs 运行。得到大量输出,看起来系统正在我的 LD_LIBRARY_PATH 中查找库并找到它们。麻烦似乎就是从这里开始的:

/usr/local/lib64/R/library/methods/libs/methods.so: error: symbol lookup error:
undefined symbol: Rf_allocS4Object (fatal)
Error in dyn.load(file, DLLpath = DLLpath, ...) : 
unable to load shared object '/usr/local/lib64/R/library/methods/libs/methods.so':
/usr/local/lib64/R/library/methods/libs/methods.so: undefined symbol: Rf_allocS4Object

所以我的猜测是,问题在于 DLLpath 中的任何内容都会覆盖 LD_LIBRARY_PATH。我尝试通过将目录添加到 os.environ['PATH'] 来更改此设置,但没有这样做。显然没有“DLLPATH”,正如我想象的那样。

好吧,我想这就是进步。有人还有其他事吗?谢谢。


查看名为 $R_HOME/etc/ldpaths 的文件(在您的情况下 $R_HOME 似乎是 /usr/local/lib64/R)。这是该文件中的命令设置LD_LIBRARY_PATH在 R 的启动阶段。

我的看起来像这样:

flodel@netbook-samsung-N150:~$ cat /usr/lib/R/etc/ldpaths 
: ${JAVA_HOME=/usr/lib/jvm/java-6-openjdk/jre}
: ${R_JAVA_LD_LIBRARY_PATH=${JAVA_HOME}/lib/i386/client:${JAVA_HOME}/lib/i386:/usr/lib/jni}
if test -n ""; then
: ${R_LD_LIBRARY_PATH=${R_HOME}/lib:}
else
: ${R_LD_LIBRARY_PATH=${R_HOME}/lib}
fi
if test -n "${R_JAVA_LD_LIBRARY_PATH}"; then
  R_LD_LIBRARY_PATH="${R_LD_LIBRARY_PATH}:${R_JAVA_LD_LIBRARY_PATH}"
fi
if test -z "${LD_LIBRARY_PATH}"; then
  LD_LIBRARY_PATH="${R_LD_LIBRARY_PATH}"
else
  LD_LIBRARY_PATH="${R_LD_LIBRARY_PATH}:${LD_LIBRARY_PATH}"
fi
export LD_LIBRARY_PATH

如果您没有该文件的写权限,您仍然可以在启动 R 之前执行此操作:

export R_LD_LIBRARY_PATH=/your/custom/path

我在我的机器上测试了它的工作原理,在 R 启动后运行以下命令:

Sys.getenv("LD_LIBRARY_PATH")
#[1] "/your/custom/path:/usr/lib/jvm/java-6-openjdk/jre/lib/i386/client:/usr/lib/jvm/java-6-openjdk/jre/lib/i386:/usr/lib/jni"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LD_LIBRARY_PATH 优先级和编译问题 的相关文章

  • 如何从网站的 .NET 安装程序中排除文件夹?

    我们的网站有一个安装程序 效果很好 我在创建安装程序时排除了 web config 和其他一些文件 但是我似乎无法排除文件夹 这可能吗 我已使用 NET 内置 Web 安装项目创建了安装程序 该项目可在新项目对话框中的 Visual Stu
  • for 循环与 cor.test 在许多类别上

    我正在尝试在 R 中编写一个循环 它将循环遍历 3 个不同的物种 以计算两个连续变量 Redness 和 VarNormAbund 之间的相关性 我的循环正在运行 但 3 个物种中每一个的输出都是相同的 这让我认为循环卡在第一个物种上 co
  • 如何制作一连串的ggplots并在它们之间绘制箭头?

    对于一个项目 我需要绘制一些图并在它们之间放置箭头作为序列的指示 我想知道我是否可以用 ggplot 来做到这一点 是否可以使用 ggplot2 绘制一个干净的大箭头并将其添加到最终的多重图中 作为示例 我使用此代码来绘制绘图 librar
  • 可以用 Django 制作移动应用程序吗?

    我想知道我是否可以在我的网站上使用 Django 代码 并以某种方式在移动应用程序 Flutter 等框架中使用它 那么是否可以使用我现在拥有的 Django 后端并在移动应用程序中使用它 所以就像models views etc 是的 有
  • Python Pandas 根据另一列的总计从另一个数据帧中选择值

    我下面有一个 DataFrame 但我需要根据取消和订单列从每个代码中选择行 假设代码 xxx 的阶数为 6 1 5 1 阶数为 11 我需要一种算法 可以选择满足总共 11 行的行 阶数为 6 5 如果没有行匹配 则选择最接近的 id 并
  • Apache Spark 中的高效字符串匹配

    我使用 OCR 工具从屏幕截图中提取文本 每个大约 1 5 句话 然而 当手动验证提取的文本时 我注意到时不时会出现一些错误 鉴于文本 你好 我真的很喜欢 Spark 我注意到 1 像 I 和 l 这样的字母被 替换 2 表情符号未被正确提
  • PySide6.1 与 matplotlib 3.4 不兼容

    当我只安装PySide6时 GUI程序运行良好 但是一旦我安装了matplotlib及其依赖包 包括pyqt5 则GUI程序将无法运行并输出以下错误消息 This application failed to start because no
  • 将 csv 文件上传到shinyApps.io

    我的应用程序在本地运行良好 并且我能够成功地将应用程序部署到shinyapps io 服务器 但是当我尝试使用shinyapps URL 在浏览器中加载应用程序时 收到以下错误消息 错误对象 数据 不是成立 我认为这是因为 data 变量从
  • `list()` 被认为是一个函数吗?

    list显然是内置类型 https docs python org 3 library stdtypes html list在Python中 我看到底下有一条评论this https stackoverflow com a 53645813
  • 如何处理包内部的 R 数据?

    我正在开发的 R 包需要多个 R 数据对象 例如预先计算的模型和参数 目前 我将包的 数据 目录中的每个对象放在单独的 RData 文件中 使用该包时 用户可以使用 数据 功能将这些对象附加到他们的环境中 我想要的行为是 在加载包时 数据对
  • PyTorch DataLoader 对并行运行的批次使用相同的随机种子

    有一个bug https tanelp github io posts a bug that plagues thousands of open source ml projects 在 PyTorch Numpy 中 当并行加载批次时Da
  • 替换rmarkdown/knitr/pdf中字幕的自动编号

    我正在使用 Rmarkdown 生成 PDF 文档 我想在其中手动定义图号 下面是一个块的示例 r chunk26 fig cap Fig 5 3 My figure caption plot 1 1 我使用特殊的编号来遵循文档的章节 问题
  • 一次评论多个对象

    假设您有一个变量 a 到 j 的列表 for x in 1 10 assign letters x x 您将如何评论那些最近创建的对象 我尝试过类似的事情 for x in 1 10 comment get letters x lt pas
  • Python]将两个文本文件合并为一个(逐行)[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我是蟒蛇新手 我想做的是将文件 a 和文件 b 逐行合并到一个文件中 例如 text file a a n b n c text fi
  • 如何使用 Keras ImageDataGenerator 预测单个图像?

    我已经训练 CNN 对图像进行 3 类分类 在训练模型时 我使用 keras 的 ImageDataGenerator 类对图像应用预处理功能并重新缩放它 现在我的网络在测试集上训练得非常准确 但我不知道如何在单图像预测上应用预处理功能 如
  • R 在安装包依赖项时不考虑最大版本

    假设我正在开发一个名为magicr做一些统计魔术 我希望它使用另一个名为的包中的函数fairydust 假设 存在于 CRAN 上 很遗憾fairydust刚刚向 CRAN 发布了 2 0 0 版本 完全破坏了我计划使用的功能 所以我更新了
  • 为什么 smtplib.SMTP().sendmail 不发送 DKIM 签名邮件

    我已经在服务器上设置了 postfix 以及 openDKIM 当我跑步时 echo Testing setup mail s Postfix test my email address 我收到电子邮件 邮件标题中有一个DKIM Signa
  • 更改 Python Cmd 模块处理自动完成的方式

    我有一个 Cmd 控制台 设置为自动完成 Magic the Gathering 收藏管理系统的卡牌名称 它使用文本参数在数据库中查询卡片 并使用结果自动完成 建议卡片 然而 这些卡片名称有多个单词 Cmd 会从last到行尾的空间 例如
  • Java时区混乱

    我正在运行 Tomcat 应用程序 并且需要显示一些时间值 不幸的是 时间快到了 还有一个小时的休息时间 我调查了一下 发现我的默认时区被设置为 sun util calendar ZoneInfo id GMT 08 00 offset
  • 长/宽数据到宽/长

    我有一个数据框 如下所示 import pandas as pd d decil 1 decil 1 decil 2 decil 2 decil 3 decil 3 decil kommune AA BB AA BB AA BB 2010

随机推荐

  • Matlab减去矩阵元素

    所以我有这个矩阵 data 1 3 4 3 5 2 5 我需要通过减去元素来获取新数据 像这样 data2 data1 data3 data2 data4 data3 data5 data4 data6 data5 data7 data4
  • 如何使用 matplotlib 全局字体的自定义路径设置自定义字体?

    有一个自定义字体在我的应用程序中 app path home user1 myapp fname home user1 myapp font myfont ttf 建立globlalmatplotlib 的字体 文档是这样说的 plt rc
  • 尝试通过意图共享视频时 UNIQUE 约束失败

    嘿 我正在尝试开发一个允许用户共享视频文件的应用程序 每当我第二次尝试共享同一视频文件时 我都会收到约束失败错误 11 21 20 46 47 103 1076 4528 E SQLiteDatabase Error inserting b
  • Spring Data REST 是否支持 JPA @Version?

    我可以使用JPA吗 Version使用 Spring Data REST 在 Spring Data REST 1 1 0 M1 中 我可以配置存储库导出器来公开实体 ID 碰巧它也会公开 Version 带注释的字段 所以我想如果我尝试P
  • 单节点/多核作业的 sbatch 脚本中是否需要 srun?

    我正在运行一个非常常见的生物信息学工具 命令bowtie2 build 它可以在单个节点上使用多线程 不是 MPI 类型作业 我有以下 sbatch 脚本 基本上 bin bash SBATCH nodes 1 SBATCH ntasks
  • PTHREAD_MUTEX_INITIALIZER 与 pthread_mutex_init (&mutex, param)

    有什么区别吗 pthread mutex t lock PTHREAD MUTEX INITIALIZER Or pthread mutex t lock pthread mutex init lock NULL 如果我只使用第一种方法 我
  • 使用其他字典值在字典中传递变量

    当使用另一个字典值作为参数时 如何将包含变量的值分配给字典键 Example name Test vars hosts localhost vars foo a foo a value b a tasks name Fix owneship
  • GIT:如何查看原点的拉/推更改

    我刚刚开始使用 Git 以前称为 Subversion 我遇到了真正的问题 无法看到原始存储库中推送或拉取的更改 我的 架构 是这样的 MAIN CODEBASE gt Development repository 1 gt Develop
  • ABTableViewCell - 添加 UIButton

    我一直在使用 ABTableViewCell 创建快速滚动单元格 除了我不知道如何将 UIButton 添加到我的自定义单元格之外 一切都工作得很好 使用ABTableViewCell 时 您可以使用drawAtPoint 或drawInR
  • 使用 php mail() 函数发送链接

    用户应收到以下格式的电子邮件 复制令牌 xxxxx 并将其粘贴到此Link 我的代码 message Copy the token token generator 10 And paste it in the link a href rec
  • 解析字符串 C# LINQ 表达式

    我试图在这里做一些真正的动态查询 最好不要在运行时调用编译器 我有一个包含 LINQ 表达式的字符串 例如 var s from a in queryable where a Type 1 select a 我怎样才能从中得到结果 IQue
  • 当 Ec2 作为角色运行尝试在 AWS 中获取会话令牌时出错

    我正在 EC2 上运行一个应用程序 使用具有以下权限的角色 sts GetSessionToken sts AssumeRole 当我尝试使用该角色获取临时凭据时 出现错误 Cannot call GetSessionToken with
  • 将 div 宽度设置为不带内联块的内容,并使 div 彼此中心对齐

    我想要一些 div 从其内容中获取宽度 Display inline block 可以做到这一点 但我也希望 div 位于彼此下方 而不是浮动时彼此相邻 使用 float left 而不是 inline block 可以做到这一点 但我希望
  • fetch() 可以做responseType=document吗?

    XHR s responseType document 非常棒 因为它会返回一个 DOM 文档 您可以在其中使用 querySelector 等 var xhr new XMLHttpRequest xhr open GET true xh
  • Microsoft Hive ODBC 驱动程序 2.1.5 超时

    我最近升级到 Microsoft hive odbc 驱动程序版本 2 01 05 1006 于 2016 年 12 月 8 日发布 我的代码适用于驱动程序的先前版本 1 0 现在 当运行我的代码时 我不断收到以下错误 错误 HY000 M
  • PyCharm 的优化导入也可以按字母顺序排列吗?

    我很喜欢 PyCharm 对 Python 导入的优化 以及删除未使用的导入 遵循 PEP8 为它们提供了合理的布局并使它们更易于阅读 有没有办法让 PyC harm 额外按字母顺序排列它们 这将使扫描速度更快 至少对我来说 PyCharm
  • 在 ggplot2 中显式设置面板大小(不仅仅是绘图大小)

    是否可以在 ggplot 中显式设置面板大小 即灰色网格面板 我想象 但找不到 有一些 ggplot 扩展允许类似于panel width unit 3 in panel height unit 4 in 我已经看到了设置整个图大小的解决方
  • 在 Eclipse 中分离编辑器

    有没有办法将编辑器与主 Eclipse 窗口分离 我知道这对于 netbeans 是可能的 但到目前为止我还无法弄清楚如何使用 eclipse 做到这一点 如果可能的话 选择 窗口 新窗户 似乎是分离编辑器的密切替代者 此命令创建一个新的
  • FCM 注册 ID 令牌的最大长度是多少?

    使用 新 Firebase Cloud Messaging 我想可靠地保存客户端设备registration id令牌到本地服务器数据库 以便服务器软件可以向它们发送推送通知 为了保存 100 生成的客户端注册令牌 我应该使用的数据库字段的
  • LD_LIBRARY_PATH 优先级和编译问题

    我正在尝试在Linux机器上安装一些软件 python的rpy2包 特别是rpy2 robjects 如果重要的话 我需要该软件在我的本地空间中查找其共享库 而不是在 usr lib64 等全局空间中查找 我没有这台机器的管理员权限 我的问