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

模块编译成功,但是python运行找不到依赖库Nomodule named ‘ ‘

解决方案步骤:

1. 确认生成文件的位置

CMake 生成的文件通常位于 build 目录中。你可以使用以下命令在项目目录中查找生成的 .so 文件:

find /data/yhy/PSSNet/step-2/partition/segment_parsing_spg/build -name "libpython_parsing.so"

这个命令将递归查找 build 目录中的所有 .so 文件。确认文件是否生成,并输出路径。

2. 查找整个项目目录

如果上述方法找不到文件,可能生成的文件被放置在项目目录的其他地方。你可以在整个 PSSNet 项目目录中查找文件:

find /data/yhy/PSSNet/ -name "libpython_parsing.so"
3. 确认输出路径

如果找到文件后,确保其路径是正确的,并且将生成的 .so 文件移动到你需要的地方,或者将 CMake 配置为在指定的目录中生成库文件。

mv /data/yhy/PSSNet/step-2/partition/segment_parsing_spg/build/python_parsing/src/libpython_parsing.so /data/yhy/anaconda3/envs/PSSNet/lib

4. 将生成的目录添加到 PYTHONPATH

如果你不想移动文件,你可以将 .so 文件所在的目录临时添加到 PYTHONPATH 环境变量中,使 Python 能够找到该文件。

执行以下命令将 .so 文件所在的路径添加到 PYTHONPATH 中:

export PYTHONPATH=/data/yhy/PSSNet/step-2/partition/segment_parsing_spg/build/python_parsing/src:$PYTHONPATH

 检查 LD_LIBRARY_PATH

确保系统正确加载了 .so 文件。你需要检查并设置 LD_LIBRARY_PATH 环境变量,将 .so 文件所在的路径添加到其中。

你可以执行以下命令临时设置 LD_LIBRARY_PATH

 

export LD_LIBRARY_PATH=/data/yhy/anaconda3/envs/PSSNet/lib:$LD_LIBRARY_PATH

  然后重新运行Python 脚本。如果不行,

2. 添加 Python 模块路径到 PYTHONPATH

如果 Python 仍然无法找到模块,你还需要确保 PYTHONPATH 包含 .so 文件的目录。你可以这样设置:

export PYTHONPATH=/data/yhy/anaconda3/envs/PSSNet/lib:$PYTHONPATH

  然后重新运行Python 脚本。如果不行,

使用 sys.path 在代码中添加路径

你也可以在代码中通过 sys.path 动态添加 .so 文件所在的路径。在你的 Python 脚本中,导入模块之前,添加以下代码:

import sys
sys.path.append('/data/yhy/PSSNet/step-2/partition/segment_parsing_spg/build/python_parsing/src')

 然后重新运行Python 脚本


http://www.kler.cn/news/355185.html

相关文章:

  • 定期备份MYSQL数据库(Linux)
  • 2024 蚂蚁SEO蜘蛛池对网站收录的帮助
  • 机器学习核心:监督学习与无监督学习
  • Ansible Roles与优化
  • Java开发中知识点整理
  • 【vue】解决vue Admin Template打包是空白的页面
  • wiki搭建
  • 爬虫逆向-js进阶(续写,搭建网站)
  • 深度学习架构:MOE架构
  • NVR录像机汇聚管理平台5个开源免费的多个NVR同时管理(网络视频录像机)系统
  • 【关系型数据库informix底层原理一】
  • ARM嵌入式学习--第三天
  • HUAWEI_HCIA_实验指南_Lib2.1_交换机基础配置
  • cleanmymacX破解版下载 cleanmymacx激活码永久免费 mac电脑免费垃圾清理软件推荐
  • 【web】JDBC
  • 浏览器缓存得学习
  • 【MySQL】MySQL的简单了解详解SQL分类数据库的操纵方法
  • 电脑技巧:优化Edge浏览器占用C盘空间的解决方案
  • linux中vi编辑器中进入编辑模式的三种进入方式a,i,o,A,I,O六种方式的区别
  • JAVA智能代驾跑腿系统一站式服务系统源码小程序