tensorflow导入错误“ImportError: DLL load failed”(已解决)

毕业论文需要用到tensorflow,然鹅我却卡在了安装,由于各种问题还自身的拖延症与它“斗争”了一周,终于安装成功了!!我一定要记录下来这血泪史(这篇笔记也拖了好几天…)

如果你也遇到下面的问题,就继续往下看吧~~

  1. 直接“pip install tensflows” 导致安装超时:“Failed to load the native TensorFlow runtime.”
  2. 版本不匹配:“Could not find a version that satisfies the requirement grpcio>=1.8.6 (from tensorflow==1.9.0) (from versions: none) ”**
  3. 导入模块错误,DLL加载失败, “ImportError: DLL load failed”****(我主要是这个问题)

以下是详细点说明~
1. 直接“pip install tensflows” 导致安装超时:“Failed to load the native TensorFlow runtime.”

  • 原因:据说是tensorflow用国外的源下载很慢,可以换成清华或者是豆瓣的源就会快很多了。
  • 解决方案:用管理员身份执行cmd/anaconda的prompt,然后输入如下命令,不行多试几次

清华:

pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple/

结果如下,清华的速度很快
tensorflow导入错误“ImportError: DLL load failed”(已解决)_第1张图片
豆瓣(这是我安装GPU版tensorflow时用的)

pip install tensorflow-gpu -i https://pypi.douban.com/simple

tensorflow导入错误“ImportError: DLL load failed”(已解决)_第2张图片


2. 版本不匹配:“Could not find a version that satisfies the requirement grpcio>=1.8.6 (from tensorflow==1.9.0) (from versions: none) ”

  • 原因:据说是anaconda安装的tensorflow只能是1.0+的版本,我的anaconda版本是3.7python,跟tensorflow的版本不匹配,还缺一个wheel,网上也有对应匹配版本,可以自行搜索。
  • 解决方案:一是把python降级3.6版本,二是找到对应wheel下载后放到对应的文件夹(非常不建议),三是安装比较新的2.01版本tensorflow。

(以上方法我都试过,其间经历了anaconda的重装、下载wheel放不到合适的位置、安装CUDA+cuDNN(安装GPU版本需要用到)、环境配置的设置、anaconda环境安装GPU、CPU版本的tensorflow…正常来说,第三个方法是可行的。第三个方法文章最后有链接)


3. 导入错误缺DLL, “ImportError: DLL load failed”****(我主要是这个问题)

  • 安装了上面的方法后,jupyter导入tensorflow没有问题但是调用就报错,DLL找不到模块
  • -原因及解决方案:
  • 原因是我的电脑没有安装好Microsoft visual studio(之前电脑内存不足的时候似乎删错了,或者说没安装过,反正看着熟悉但是搜索了电脑文件没有)。据说Microsoft visual studio恰好提供了相应的tensorflow版本需要的Visual C++ 库运行时组件,所以如果错误和我一样是:
    tensorflow导入错误“ImportError: DLL load failed”(已解决)_第3张图片
    解决方法就是安装vs2019的方法补齐dll。
    (p.s:这个东西很大很占内存最好不要放在C盘、而且安装挺慢的。。)

安装vs2019后!!感动!终于成功了!如图:
tensorflow导入错误“ImportError: DLL load failed”(已解决)_第4张图片


这几个链接带我走出安装迷茫,上面讲不清楚,也可以参考看看:

  1. mportError: DLL load failed 高效解决方法 前提是你的版本也是:Win10+Python3.7+Anaconda2019.03+tensorflow-gpu2.0/1.14+CUDA10.0
  2. TensorFlow2.1.0安装教程,上面说的版本不匹配的第三个方法参考这个链接
  3. 在此链接可以找到Tensorflow支持Python3.7的一个wheel
    然后找到下载下来的wheel对应的位置pip install 它(不过似乎还有一个错误:粗糙的方法导致setuptools的版本似乎也不匹配,版本的问题我之前安装其他东西也试过,最后基本都是重装的结局…)
    所以,我上面说不建议第二种方法。
    tensorflow导入错误“ImportError: DLL load failed”(已解决)_第5张图片
    ~the end~

你可能感兴趣的:(学习笔记)