IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> windows下 python 使用 pip 安装TA-Lib报错的原因及解决方法 -> 正文阅读

[Python知识库]windows下 python 使用 pip 安装TA-Lib报错的原因及解决方法

windows下 python 使用 pip 安装TA-Lib报错的原因及解决方法

问题环境

Windows 10 x64 python 3.8.6

问题描述

Windows 10 x64 下使用pip install ta-lib命令安装ta-lib库时会报错,错误信息为:talib/_ta_lib.c(680): fatal error C1083: 无法打开包括文件: “ta_libc.h”: No such file or directory.

安装过程日志如下:

(venv) F:\CodeProj>pip install ta-lib==0.4.24
Collecting ta-lib==0.4.24
  Using cached TA-Lib-0.4.24.tar.gz (269 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy in f:\codeproj\venv\lib\site-packages (from ta-lib==0.4.24) (1.21.5)
Using legacy 'setup.py install' for ta-lib, since package 'wheel' is not installed.
Installing collected packages: ta-lib
  Running setup.py install for ta-lib ... error
  error: subprocess-exited-with-error

  × Running setup.py install for ta-lib did not run successfully.
  │ exit code: 1
  ╰─> [29 lines of output]
      C:\Users\zhou\AppData\Local\Temp\pip-install-3z8q087g\ta-lib_61610fdfdd3848f58b5fb3d2ab780bf1\setup.py:77: UserWarning: Cannot find ta-lib library, installation may fa
il.
        warnings.warn('Cannot find ta-lib library, installation may fail.')
      running install
      f:\codeproj\venv\lib\site-packages\setuptools\command\install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other sta
ndards-based tools.
        warnings.warn(
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-38
      creating build\lib.win-amd64-cpython-38\talib
      copying talib\abstract.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\deprecated.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\stream.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\test_abstract.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\test_data.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\test_func.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\test_pandas.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\test_polars.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\test_stream.py -> build\lib.win-amd64-cpython-38\talib
      copying talib\__init__.py -> build\lib.win-amd64-cpython-38\talib
      running build_ext
      building 'talib._ta_lib' extension
      creating build\temp.win-amd64-cpython-38
      creating build\temp.win-amd64-cpython-38\Release
      creating build\temp.win-amd64-cpython-38\Release\talib
      "D:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -Ic:\ta-lib\c\inc
lude -If:\codeproj\venv\lib\site-packages\numpy\core\include -If:\codeproj\venv\include "-ID:\Program Files\Python\Python38\include" "-ID:\Program Files\Python\Pyt
hon38\Include" "-ID:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\ATLMFC\include" "-ID:\Program Files (x86)\Microsoft Visual Studio\
2017\Enterprise\VC\Tools\MSVC\14.16.27023\include" "-ID:\Windows Kits\10\include\10.0.17763.0\ucrt" "-ID:\Windows Kits\10\include\10.0.17763.0\shared" "-ID:\Windows Kits\10\
include\10.0.17763.0\um" "-ID:\Windows Kits\10\include\10.0.17763.0\winrt" "-ID:\Windows Kits\10\include\10.0.17763.0\cppwinrt" /Tctalib/_ta_lib.c /Fobuild\temp.win-amd64-cp
ython-38\Release\talib/_ta_lib.obj
      _ta_lib.c
      talib/_ta_lib.c(680): fatal error C1083: 无法打开包括文件: “ta_libc.h”: No such file or directory
      error: command 'D:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\VC\\Tools\\MSVC\\14.16.27023\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> ta-lib

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

(venv) F:\CodePro>

问题原因 & 解决办法

  1. 不能直接pip下载。下载的是tar.gz的文件。windows不能解压运行。看了下清华的地址列表。只有tar.gz的和一个压缩包。其他地址没看。
    直接下载压缩包文件。在使用python setup.py install的时候会使用到c++。然后又是一堆缺少dll的麻烦。dll补全以后又不能调用。。。

  2. https://www.lfd.uci.edu/~gohlke/pythonlibs/ 找到ta-lib库。下载对应的版本的whl文件。
    比如:TA_Lib-0.4.24-cp38-cp38-win_amd64.whl(前面是库版本,后面是对应的python版本。最后的数字代表windows系统。32位或者64位。电脑属性查看或者cmd里python查看)

  3. 一定要一一对应。否则会报ERROR: TA_Lib-0.4.24-cp38-cp38-win32.whl is not a supported wheel on this platform.平台不符合的错误。

  4. 下载出来的文件不能改名。否则会报ERROR: TA_Lib64.whl(你更改后的文件名) is not a valid wheel filename.文件名无效错误。

另外,若想将TA-Lib包安装在python全局系统环境,则还要确保以下两项:

  1. 确保pip添加到windows环境变量。在哪都能使pip。
  2. 确保以上都满足cmd进入下载文件的位置。

TA_Lib-0.4.24-cp38-cp38-win_amd64.whl下载页面
下载TA_Lib-0.4.24-cp38-cp38-win_amd64.whl

安装过程日志如下:(此处我直接将TA_Lib-0.4.24-cp38-cp38-win_amd64.whl 文件下载至 F:\CodeProj目录)

(venv) F:\CodeProj>pip install TA_Lib-0.4.24-cp38-cp38-win_amd64.whl
Processing f:\codeproj\ta_lib-0.4.24-cp38-cp38-win_amd64.whl
Requirement already satisfied: numpy in f:\codeproj\venv\lib\site-packages (from TA-Lib==0.4.24) (1.21.5)
Installing collected packages: TA-Lib
Successfully installed TA-Lib-0.4.24

(venv) F:\CodeProj>
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-05-09 12:36:21  更:2022-05-09 12:36:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:40:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码