当前位置: 首页 > news >正文

VRTE 的应用程序部署到Ubuntu上 报错:bash: ./rb_exmd: No such file or directory

🛠️ 如何在 Ubuntu 上部署 VRTE 3.5 的 AraCM_IPC 应用程序

在将 VRTE 3.5 的 AraCM_IPC 应用部署到 Ubuntu 系统时,可能会遇到运行失败的问题,提示类似:

bash: ./rb_exmd: No such file or directory

这通常并非文件不存在,而是因为系统无法找到程序运行所依赖的动态链接器(dynamic linker)或共享库。以下是完整的排查与解决方案。


🔍 问题一:找不到动态链接器 ld-linux-x86-64.so.2

❌ 现象

运行 ./rb_exmd 时提示 No such file or directory,但文件实际存在。

使用 ldd 检查依赖时发现:

ldd rb_exmd

输出可能提示缺少动态链接器,或无法解析 ELF 解释器路径。

📌 原因分析

rb_exmd 是一个为特定环境编译的可执行文件,其 ELF 头部指定的动态链接器路径为:

/lib64/ld-linux-x86-64.so.2

而 Ubuntu 系统中,该链接器实际位于:

/lib/x86_64-linux-gnu/ld-2.31.so

并通过软链接在 /lib64 中提供兼容支持。

虽然 /lib64/ld-linux-x86-64.so.2 存在,但某些情况下程序仍会尝试从 /lib 目录查找该链接器(尤其在多架构或兼容性场景下),而默认的 /lib 目录下没有对应的软链接

✅ 解决方案:在 /lib 创建软链接

在 Ubuntu 的 /lib 目录中创建指向实际链接器的软链接:

sudo ln -s /lib/x86_64-linux-gnu/ld-2.31.so /lib/ld-linux-x86-64.so.2

验证是否成功:

ls -l /lib/ld-linux-x86-64.so.2

应显示:

lrwxrwxrwx 1 root root 32 ... /lib/ld-linux-x86-64.so.2 -> /lib/x86_64-linux-gnu/ld-2.31.so

✅ 提示:即使 /lib64 已存在该链接,部分程序仍可能优先或回退查找 /lib,因此建议同时确保两个路径都可用。


🔍 问题二:缺少运行时依赖库

❌ 现象

即使解决了链接器问题,运行时仍可能报错:

error while loading shared libraries: libxxx.so: cannot open shared object file: No such file or directory
✅ 解决方案:部署依赖库

已将 AraCM_IPC 所需的全部依赖库打包(见附件),请按以下步骤操作:

  1. 将附件中的库文件解压并复制到 VRTE 的库目录:

  • cp -r <解压路径>/*.so* /opt/vrte/lib/
  • 更新系统动态库缓存(可选,推荐):

  • sudo ldconfig
  • 确保 /opt/vrte/lib 已加入库搜索路径:

    • 方法一:将 /opt/vrte/lib 添加到 /etc/ld.so.conf 并运行 sudo ldconfig
    • 方法二:运行前设置环境变量:
export LD_LIBRARY_PATH=/opt/vrte/lib:$LD_LIBRARY_PATH

▶️ 启动应用

完成上述配置后,即可启动服务:

sudo ./exmd.sh

该脚本将启动 rb_exmd 守护进程并初始化 VRTE 运行环境。


✅ 总结:完整部署步骤

# 1. 创建动态链接器软链接
sudo ln -s /lib/x86_64-linux-gnu/ld-2.31.so /lib/ld-linux-x86-64.so.2# 2. 部署依赖库
cp *.so* /opt/vrte/lib/# 3. 更新库缓存(推荐)
sudo ldconfig# 4. 启动服务
sudo ./exmd.sh

⚠️ 注意事项

  • 确保目标 Ubuntu 系统为 x86_64 架构,与 VRTE 3.5 编译环境匹配。
  • 若使用非标准路径,请确保 LD_LIBRARY_PATHldconfig 配置正确。
  • 建议以 sudo 运行,避免权限不足导致通信资源(如共享内存、Socket)创建失败。

通过以上步骤,AraCM_IPC 应用即可在 Ubuntu 系统上正常运行。如有其他依赖问题,可通过 ldd rb_exmd 进一步排查缺失的 .so 文件。

http://www.dtcms.com/a/320461.html

相关文章:

  • Korg 电子琴 2025 高级电子琴手机版:专业的音乐创作与演奏工具
  • 平板探测器的主要技术指标
  • 电脑IP地址是“169.254.x.x”而无法上网的原因
  • ubuntu 22.04 使用yaml文件 修改静态ip
  • 论文阅读:AAAI 2024 ExpeL: LLM Agents Are Experiential Learners
  • openpnp - 不连接设备,只大概测试一下摄像头是否好使
  • Zabbix网络发现:自动化监控新利器
  • TestComplete 如何打造高效UI测试体系?
  • Vue开发的3D全景图效果
  • linux信号量和日志
  • 算法训练之字符串
  • 复杂水文环境下识别精度↑86%!陌讯多模态融合算法在水位监测中的优化实践
  • 四、redis入门之集群部署
  • 富士 Instax 12 和 Instax Mini 11 有什么区别?推荐购买哪一款?
  • 【JMeter】调试取样器的使用
  • 全场景音频工作流实践:Melody如何打造音源管理闭环
  • git | git bash变慢解决
  • 基于 Modbus TCP 的飞升 FSH-CF计量泵多段速控制优化研究
  • pdf文件转word免费使用几个工具
  • react+echarts实现个性化评分展示(类进度条)
  • Spark01-初识Spark
  • React+TypeScript代码注释规范指南
  • 前端开发(HTML,CSS,VUE,JS)从入门到精通!第八天(Vue框架及其安装)(完结篇) 重点 ! ! !
  • React SSR 水合问题
  • Spark在什么情况下CBO才会判断失误,如何避免
  • 零成本建站:将 Windows 电脑变身为个人网站服务器
  • ubuntu alias命令使用详解
  • AI赋能SEO关键词优化策略
  • 润乾报表、帆软报表的开源替代品—JimuReport(积木报表)
  • 从大数据视角理解时序数据库选型:为何选择 Apache IoTDB?