MindSpore:本地编译无法找到python

问题描述:

在用build.sh进行MindSpore本地编译时,提示无法找到python3,系统内已经安装了python3

其中红框部分是我参考论坛里的出现同样问题的人下面的一个回答(mindspore本地编译出错,cmake找不到python3_MindSpore_昇腾论坛_华为云论坛 (huaweicloud.com)),在check_requirements.cmake中加的几行错误定位的代码

其中我Python3 library path后面是空的,应该是Python3 Library找不到。我根据那个帖子2L的回复执行

python3 -m sysconfig | grep LIBRARY

执行结果:

我无论是Python3 还是python 还是python3都有正确的PY3LIBRARY

我系统的环境情况:

ubuntu = 18.04

python = 3.7.5

cmake = 3.18.3

gmp = 6.1.2

gcc = 7.5.0

在环境上执行:

whereis libpython3.7m.so.1.0

结果是:

我是通过下载python安装包在本地解压后进行编译安装的。

并且在configure的时候有添加 --enable-shared

下面是我查询当前python是否为enable shared构建的结果:

解决方案:

您的环境上安装的Python3.7.5可能是静态版本,本地编译MindSpore依赖Python3动态库,因此在Python3_LIBRARY变量无法找到的情况下会报错并退出编译。

在环境上执行:

whereis libpython3.7m.so.1.0

查找Python3动态库,如果查询无结果,请安装包含动态库的Python3.7.5,如Python3-dev库,或使用conda虚拟环境,或开启--enable-shared选项本地编译并安装Python。

请问当前环境上的Python3.7.5是以何种方式安装的?您提供的信息可能有助于我们优化MindSpore的编译流程,感谢您的帮助

在截图中可见您的默认Python指向了系统自带版本,并没有指向您编译的可用版本,对此您可以尝试:

1. 使用anaconda创建虚拟环境,conda环境中指定python版本为3.7,该方案比较简单可控

2. 尝试将默认Python与Python3指向您本地编译安装的版本~/Downloads/Python-3.7.5,这样的操作可能会导致某些依赖系统默认自带python3的软件出现问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值