问题描述

安装过程
conda create -n conda-forge-tensorflow conda-forge::tensorflow
conda info -e
conda activate conda-forge-tensorflow
pip install ipython
python -c 'import tensorflow; print(tensorflow.__version__)'
先说结论
  • conda 安装tensorflow,依赖numpy;numpy依赖openblas;默认没有安装。
  • 手动安装openblas不完全,需要手动配置链接库软链
  • 关键信息:
conda install openblas
# 建立软链
ln -s libopenblas.dylib libopenblas_vortexp-r0.3.17.dylib
遇到问题
Traceback (most recent call last):
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/__init__.py", line 22, in <module>
from . import multiarray
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/multiarray.py", line 12, in <module>
from . import overrides
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/overrides.py", line 7, in <module>
from numpy.core._multiarray_umath import (
ImportError: dlopen(/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so, 0x0002): Library not loaded: @rpath/libcblas.3.dylib
Referenced from: /Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so
Reason: tried: '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/bin/../lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/bin/../lib/libcblas.3.dylib' (no such file), '/usr/local/lib/libcblas.3.dylib' (no such file), '/usr/lib/libcblas.3.dylib' (no such file) During handling of the above exception, another exception occurred: Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/tensorflow/__init__.py", line 41, in <module>
from tensorflow.python.tools import module_util as _module_util
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/tensorflow/python/__init__.py", line 41, in <module>
from tensorflow.python.eager import context
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/tensorflow/python/eager/context.py", line 30, in <module>
import numpy as np
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/__init__.py", line 150, in <module>
from . import core
File "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/__init__.py", line 48, in <module>
raise ImportError(msg)
ImportError: IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE! Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed. We have compiled some common reasons and troubleshooting tips at: https://numpy.org/devdocs/user/troubleshooting-importerror.html Please note and check the following: * The Python version is: Python3.9 from "/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/bin/python"
* The NumPy version is: "1.21.1" and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help. Original error was: dlopen(/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so, 0x0002): Library not loaded: @rpath/libcblas.3.dylib
Referenced from: /Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so
Reason: tried: '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/python3.9/site-packages/numpy/core/../../../../libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/bin/../lib/libcblas.3.dylib' (no such file), '/Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/bin/../lib/libcblas.3.dylib' (no such file), '/usr/local/lib/libcblas.3.dylib' (no such file), '/usr/lib/libcblas.3.dylib' (no such file)
排查
  • 因为numpy需要线性计算库依赖,openblas相关
  • 但conda中没有,用如下命令安装:
conda install openblas
  • 确认安装结果:
conda list | grep blas
blas 1.0 openblas defaults
libblas 3.9.0 11_osxarm64_openblas conda-forge
libcblas 3.9.0 11_osxarm64_openblas conda-forge
liblapack 3.9.0 11_osxarm64_openblas conda-forge
libopenblas 0.3.17 h9886b1c_1 defaults
openblas 0.3.17 hca03da5_1 defaults
openblas-devel 0.3.17 hca03da5_1 defaults ll /Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib
lrwxr-xr-x 1 enzhao enzhao 33B 3 16 18:22 /Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib -> libopenblas_vortexp-r0.3.17.dylib
  • 再次导入问题依旧,排查libopenblas_vortexp-r0.3.17.dylib文件,发现不存在。
  • 建立软链:
cd /Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib
# 建立软链
ln -s libopenblas.dylib libopenblas_vortexp-r0.3.17.dylib
# 确认文件正常
less /Users/enzhao/suanec/libs/miniconda3/envs/conda-forge-tensorflow/lib/libcblas.3.dylib
  • 重新导入,已正常:
python -c 'import tensorflow; print(tensorflow.__version__)'
2.7.0

tensorflow-2.7-M1-安装依赖openblas问题的更多相关文章

  1. 一、TensorFlow的简介和安装和一些基本概念

    1.Tensorflow的简介 就是一个科学计算的库,用于数据流图(张量流,可以理解成一个N维得数组). Tensorflow支持CPU和GPU,内部实现了对于各种目标函数求导的方式. 2.Tenso ...

  2. tensorflow学习笔记----tensorflow在windows的安装及TensorBoard中mnist样例

    前言:                                                                                                 ...

  3. Tensorflow教程(1)Tensorflow的下载和安装

    人工智能已经成为了目前的大趋势,作为程序员的我们也应该跟着时代进步.Tensorflow作为人工智能领域的重要工具,被广泛的使用在机器学习的应用当中. Tensorflow使用人数众多.社区完善,所以 ...

  4. git克隆项目到本地&&全局安装依赖项目&&安装依赖包&&启动服务

     一.安装本地开发环境 1.安装本项目 在需要保存到本地的项目的文件夹,进入到文件夹里点击右键,bash here,出现下图: 2.安装依赖项目  3.安装依赖包(进入到命令行) # 安装依赖包 $ ...

  5. centos 安装依赖错误

    出现下列错误: error: curl/curl.h: No such file or directory 出错原因:缺少libcurl-dev or libcurl-devel centOS上安装依 ...

  6. 安装依赖包时--save-dev以及-save的区别及意义

    首先这样做会生成一个package.json的配置文件,并在里面增加相应的版本信息,以后运行程序时,安装依赖包可以直接 npm  install或者你有安装淘宝镜像,那就cnpm install 就一 ...

  7. Symfony没有安装依赖_PHP Fatal error: require(): Failed opening required

    $ php bin/console server:run PHP Warning: require(D:\home\workspace\pd\app/../vendor/autoload.php): ...

  8. Linux 安装依赖库

    ###安装依赖库###yum -y install rsync net-snmp syslog net-snmp-devel wget patch screen gcc gcc-c++ autocon ...

  9. TensorFlow学习笔记1——安装

    1. 准备好Anaconda环境 具体参见:http://blog.csdn.net/zhdgk19871218/article/details/46502637 2. 建立名叫TensorFlow的 ...

  10. 使用npm安装依赖,尽量别使用cnpm,会漏掉很多依赖的

    使用npm安装依赖,尽量别使用cnpm,会漏掉很多依赖的

随机推荐

  1. CUDA 的随机数算法 API

    参考自 Nvidia cuRand 官方 API 文档 一.具体使用场景 如下是是在 dropout 优化中手写的 uniform_random 的 Kernel: #include <cuda ...

  2. Prism Sample 15-FilteringEvents

    例14演示了怎样事件聚合器怎样发布与接收信息. 例15增加了一个事件的过滤功能,即设定一个条件,符合的才接收. _ea.GetEvent<MessageSentEvent>().Subsc ...

  3. 在chatGPT的帮助下成功从Rancher中删除无效的集群

    只要你坚持,不放弃,问题总有解决的一天! 与chatgpt进行了几次沟通,成功解决历史遗留问题,成功从rancher中删除了无效的集群 chatGPT回答1 如果您在 Rancher UI 中无法删除 ...

  4. 报错HTTP 405 Method Not Allowed, Allow: POST, OPTIONS, "detail": "方法 “GET” 不被允许。"

    当测试注册功能是否实现时,出现了这种情况的405:HTTP 405 Method Not AllowedAllow: POST, OPTIONSContent-Type: application/js ...

  5. kafka生产者你不得不知的那些事儿

    前言 kafka生产者作为消息发送中很重要的一环,这里面可是大有文章,你知道生产者消息发送的流程吗?知道消息是如何发往哪个分区的吗?如何保证生产者消息的可靠性吗?如何保证消息发送的顺序吗?如果对于这些 ...

  6. AcWing 1215. 小朋友排队

    n个小朋友站成一排. 现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友. 每个小朋友都有一个不高兴的程度. 开始的时候,所有小朋友的不高兴程度都是 0. 如果某个小朋友第一次 ...

  7. Java实现Kafka生产者和消费者的示例

    Kafka简介 Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.Kafka的目标是为处理实时数据提供一个统一.高吞吐.低延迟的平台. 文章持续更新,微信搜索「 ...

  8. shell脚本中特殊筛选文件

    问题描述:在写shell中,总会遇到一些各式各样筛选文件的需求,整理了一些特殊情况 1.查找目标文件下大于100Mb的文件 find $target_dir -type f -size +70M 2. ...

  9. Anaconda 环境下 R 包 ggraph_1.0.2 安装小记

    由于微信不允许外部链接,你需要点击文章尾部左下角的 "阅读原文",才能访问文中链接. 记录一下今天在 Anaconda3 环境下 R==3.4.3 中安装 ggraph 的一些问题 ...

  10. 【技术积累】Linux中的基础知识【一】

    Linux系统是什么 Linux系统是一种开源操作系统,它极具可定制性和灵活性,因此受到了许多人的欢迎.Linux系统以简单,强大和兼容性而著称.它可用于各种设备,从个人计算机到超级计算机,从移动设备 ...