paddlepaddle和paddleDetection安装问题

本人的环境:ssh连接的服务器下+linux系统+conda环境下安装的python,并且我的gcc是最新版本(可以在进japan里面下载。http://www.gnu.org/software/gcc/mirrors.html)
*注意:由于每个人的配置不一样,所以我提供的方法仅供参考
如果不能解决,建议去 https://github.com/PaddlePaddle/Paddle/issues,或者去google查找解决方案

查看paddlepaddle是否安装成功

import paddle.fluid as fluid
fluid.install_check.run_check()

1.import paddle出现
batch = batch.batch行出现问题 name ‘batch’ is not defined

解决方法:如果是安装旧版的paddlepaddle,可以尝试安装最新版本paddlepaddle,并且确保自己的cuda版本和安装的需求是一样的。
cuda版本查看:nvidia-smi

2.TensorRt dynamic library(libnvinfer.so) that paddle depends on is not…
这是个warning,如果不用到paddle interference就可以忽略,再次运行就消失

3.Cannot load cudnn shared library. Cannot invoke method cudnnGetVersion.
如果和我一样是conda环境下装的python,就用conda安装最新稳定版的版本(注意cuda版本)
在这里插入图片描述
4.Original Error is: (PreconditionNotMet) The third-party dynamic library (lib
和3的解决方法一样

5.cannot import name ‘monkey_patch_math_varbase’ from 'paddle.fluid.dygraph’
和3的解决方法一样

paddleDetection安装问题
如果在github clone太慢,报超时等错误,去下面网址clone

https://gitee.com/paddlepaddle/PaddleDetection/blob/release/2.3/docs/tutorials/INSTALL_cn.md#https://gitee.com/link?target=https%3A%2F%2Fdoc.fastgit.org%2Fzh-cn%2Fguide.html

具体是在terminal中输入如下代码

# 克隆PaddleDetection仓库
cd <path/to/clone/PaddleDetection>
git clone https://github.com/PaddlePaddle/PaddleDetection.git

6.paddledetection安装问题:ImportError: libSM.so.6: cannot open shared object file: No such file or directory
apt-get install libsm6
类似的importError解决方法也一样,不行就在csdn搜一下安装哪个

7.在安装paddlepaddle或paddledetection过程中缺少一些库的情况下,如上面的libsm,如果出现该问题:files list file for package ‘xxd’ is missing final newline E: Sub-process /u
解决方法:在当前linux目录下创建一个fix.py文件,然后将下列代码放入,然后终端执行 python fix.py

import os

dpkg_path = '/var/lib/dpkg/info/'
paths = os.listdir(dpkg_path)
for path in paths:
    path = dpkg_path + path
    f = open(path, 'a+')
    data = f.read()
    if len(data) > 1 and data[-1:] != '\n':
        f.write('\n')
        print 
        'added newline character to:', path
    f.close() 
#用于解决xxd问题

8.Errors were encountered while processing:
grub-efi-amd64-signed
E: Sub-process /usr/bin/dpkg returned an error code (1)

linux终端执行下列代码:

apt-get remove --purge grub*
apt-get install grub-efi

当然在解决了上面7和8问题后,就可以安装缺少的库了,我记得是直接,如果不对就按照错误去百度如何下载

apt-get install libsm.so

~后续问题有解决了的再更新,包括只能在一张卡上跑**(已更新)**
Your Paddle Fluid is installed successfully ONLY for SINGLE GPU or CPU!
不能MULTY
以及老旧paddle版本的安装问题等
如果在运行后发现
import paddle.fluid as fluid
fluid.install_check.run_check()

9.老版本paddle的安装问题,如果提示can’t connect libcudnn.so 之类的这些链接库,导致只能在single GPU or CPU 或者single上都不能跑的

Original Error is: (PreconditionNotMet) The third-party dynamic library (libnccl.so) that Paddle depends on is not configured correctly. (error code is libnccl.so: cannot open shared object file: No such file or directory)
Suggestions:

  1. Check if the third-party dynamic library (e.g. CUDA, CUDNN) is installed correctly and its version is matched with paddlepaddle you installed.
  2. Configure third-party dynamic library environment variables as follows:
  • Linux: set LD_LIBRARY_PATH by export LD_LIBRARY_PATH=...
  • Windows: set PATH by `set PATH=XXX; (at /paddle/paddle/fluid/platform/dynload/dynamic_loader.cc:285)

如果是在服务器上进行安装,可能每个人的端口是被docker分开的,所以本地的cudnn动态链接库就不在系统目录里,所以就要去docker里面复制出来到我们的系统目录下。
首先用find ~ -name “libcudnn.so” 或者 locate libcudnn.so 找到其位置
如:/var/lib/docker/overlay2/fe9c1bc0ea133d7234a2aff757804134fc1eddadc04c32aa0fc6d50c84101d01/diff/usr/lib/x86_64-linux-gnu/libcudnn.so.7.6.5
一定要是到7.6.5的最后一条
然后cd /usr/lib 到存放库的位置,输入ls查看文件目录,如果你要存放的库,如libcudnn.so有以下红色的文件,则先删除, rm libcudnn.so在这里插入图片描述
然后再把libcudnn.so.7.6.5用cp指令放入我们系统目录/usr/lib中

cp /var/lib/docker/overlay2/fe9c1bc0ea133d7234a2aff757804134fc1eddadc04c32aa0fc6d50c84101d01/diff/usr/lib/x86_64-linux-gnu/libcudnn.so.7.6.5 ./libcudnn.so

该指令即把libcudnn.so.7.6.5以名字为libcudnn.so放入/usr/lib中,即可解决
如果还有这样的库无法找到,则重复上述操作。

最后是PaddleDetection的问题
如果出现:
ModuleNotFoundError: No module named ‘paddle.io’

No module named ‘paddle.utils.download’
就是PaddleDetection版本和paddlepaddle版本不匹配,比如paddledetection2.0要求2.0.0以上的paddlepaddle,则如果安装了paddlepaddle1.8.4就会报上述错误,解决方法是去github选择满足的版本重装PaddleDetection即可解决。
在这里插入图片描述

  • 24
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值