Python TA-Lib安装问题

时间:2016-12-15 03:30:57

标签: python pip install windows-10 ta-lib

令人沮丧的是在python中安装TA-Lib包很困难。

https://pypi.python.org/pypi/TA-Lib

我已经阅读了所有可以在此找到的论坛帖子,但对于我的特定问题却没有运气......

Windows 10 Python 3.5.2 Anaconda 4.2.0 Cython 0.24.1 Microsoft Visual Studio 14.0

我已经将ta-lib-0.4.0-msvc.zip下载并提取到C:/ TA-Lib (常见问题似乎是人们没有安装底层的TA-Lib文件http://www.ta-lib.org/hdr_dw.html

如果有人可以帮我解决这个问题,我会非常感激!

使用'pip install ta-lib'我得到以下内容:

C:\Users\Matt>pip install ta-lib
Collecting ta-lib
  Using cached TA-Lib-0.4.10.tar.gz
Building wheels for collected packages: ta-lib
  Running setup.py bdist_wheel for ta-lib ... error
  Complete output from command c:\users\matt\anaconda3\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\Matt\\AppData\\Local\\Temp\\pip-build-vv02ktg_\\ta-lib\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d C:\Users\Matt\AppData\Local\Temp\tmpqstzmsgspip-wheel- --python-tag cp35:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win-amd64-3.5
  creating build\lib.win-amd64-3.5\talib
  copying talib\deprecated.py -> build\lib.win-amd64-3.5\talib
  copying talib\test_abstract.py -> build\lib.win-amd64-3.5\talib
  copying talib\test_data.py -> build\lib.win-amd64-3.5\talib
  copying talib\test_func.py -> build\lib.win-amd64-3.5\talib
  copying talib\test_stream.py -> build\lib.win-amd64-3.5\talib
  copying talib\__init__.py -> build\lib.win-amd64-3.5\talib
  running build_ext
  skipping 'talib\common.c' Cython extension (up-to-date)
  building 'talib.common' extension
  creating build\temp.win-amd64-3.5
  creating build\temp.win-amd64-3.5\Release
  creating build\temp.win-amd64-3.5\Release\talib
  C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ic:\users\matt\anaconda3\lib\site-packages\numpy\core\include -Ic:\ta-lib\c\include -Ic:\users\matt\anaconda3\include -Ic:\users\matt\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\8.1\include\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\winrt" /Tctalib\common.c /Fobuild\temp.win-amd64-3.5\Release\talib\common.obj
  common.c
  C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\link.exe /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFEST:EMBED,ID=2 /MANIFESTUAC:NO /LIBPATH:c:\ta-lib\c\lib /LIBPATH:c:\users\matt\anaconda3\libs /LIBPATH:c:\users\matt\anaconda3\PCbuild\amd64 "/LIBPATH:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\LIB\amd64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.10240.0\ucrt\x64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\8.1\lib\winv6.3\um\x64" ta_libc_cdr.lib /EXPORT:PyInit_common build\temp.win-amd64-3.5\Release\talib\common.obj /OUT:build\lib.win-amd64-3.5\talib\common.cp35-win_amd64.pyd /IMPLIB:build\temp.win-amd64-3.5\Release\talib\common.cp35-win_amd64.lib
  common.obj : warning LNK4197: export 'PyInit_common' specified multiple times; using first specification
     Creating library build\temp.win-amd64-3.5\Release\talib\common.cp35-win_amd64.lib and object build\temp.win-amd64-3.5\Release\talib\common.cp35-win_amd64.exp
  common.obj : error LNK2001: unresolved external symbol TA_SetUnstablePeriod
  common.obj : error LNK2001: unresolved external symbol TA_Shutdown
  common.obj : error LNK2001: unresolved external symbol TA_Initialize
  common.obj : error LNK2001: unresolved external symbol TA_GetUnstablePeriod
  common.obj : error LNK2001: unresolved external symbol TA_GetVersionString
  build\lib.win-amd64-3.5\talib\common.cp35-win_amd64.pyd : fatal error LNK1120: 5 unresolved externals
  error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\link.exe' failed with exit status 1120

  ----------------------------------------
  Failed building wheel for ta-lib
  Running setup.py clean for ta-lib
Failed to build ta-lib
Installing collected packages: ta-lib
  Running setup.py install for ta-lib ... error
    Complete output from command c:\users\matt\anaconda3\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\Matt\\AppData\\Local\\Temp\\pip-build-vv02ktg_\\ta-lib\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\Matt\AppData\Local\Temp\pip-qxmjmn5m-record\install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build\lib.win-amd64-3.5
    creating build\lib.win-amd64-3.5\talib
    copying talib\deprecated.py -> build\lib.win-amd64-3.5\talib
    copying talib\test_abstract.py -> build\lib.win-amd64-3.5\talib
    copying talib\test_data.py -> build\lib.win-amd64-3.5\talib
    copying talib\test_func.py -> build\lib.win-amd64-3.5\talib
    copying talib\test_stream.py -> build\lib.win-amd64-3.5\talib
    copying talib\__init__.py -> build\lib.win-amd64-3.5\talib
    running build_ext
    skipping 'talib\common.c' Cython extension (up-to-date)
    building 'talib.common' extension
    creating build\temp.win-amd64-3.5
    creating build\temp.win-amd64-3.5\Release
    creating build\temp.win-amd64-3.5\Release\talib
    C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ic:\users\matt\anaconda3\lib\site-packages\numpy\core\include -Ic:\ta-lib\c\include -Ic:\users\matt\anaconda3\include -Ic:\users\matt\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\8.1\include\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\winrt" /Tctalib\common.c /Fobuild\temp.win-amd64-3.5\Release\talib\common.obj
    common.c
    C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\link.exe /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFEST:EMBED,ID=2 /MANIFESTUAC:NO /LIBPATH:c:\ta-lib\c\lib /LIBPATH:c:\users\matt\anaconda3\libs /LIBPATH:c:\users\matt\anaconda3\PCbuild\amd64 "/LIBPATH:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\LIB\amd64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.10240.0\ucrt\x64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\8.1\lib\winv6.3\um\x64" ta_libc_cdr.lib /EXPORT:PyInit_common build\temp.win-amd64-3.5\Release\talib\common.obj /OUT:build\lib.win-amd64-3.5\talib\common.cp35-win_amd64.pyd /IMPLIB:build\temp.win-amd64-3.5\Release\talib\common.cp35-win_amd64.lib
    common.obj : warning LNK4197: export 'PyInit_common' specified multiple times; using first specification
       Creating library build\temp.win-amd64-3.5\Release\talib\common.cp35-win_amd64.lib and object build\temp.win-amd64-3.5\Release\talib\common.cp35-win_amd64.exp
    common.obj : error LNK2001: unresolved external symbol TA_SetUnstablePeriod
    common.obj : error LNK2001: unresolved external symbol TA_Shutdown
    common.obj : error LNK2001: unresolved external symbol TA_Initialize
    common.obj : error LNK2001: unresolved external symbol TA_GetUnstablePeriod
    common.obj : error LNK2001: unresolved external symbol TA_GetVersionString
    build\lib.win-amd64-3.5\talib\common.cp35-win_amd64.pyd : fatal error LNK1120: 5 unresolved externals
    error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\link.exe' failed with exit status 1120

    ----------------------------------------
Command "c:\users\matt\anaconda3\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\Matt\\AppData\\Local\\Temp\\pip-build-vv02ktg_\\ta-lib\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\Matt\AppData\Local\Temp\pip-qxmjmn5m-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\Matt\AppData\Local\Temp\pip-build-vv02ktg_\ta-lib\

11 个答案:

答案 0 :(得分:9)

您可以尝试“非扩展的Python扩展包的Windows二进制文件 作者:加州大学尔湾分校荧光动力学实验室Christoph Gohlke。“

http://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

他根据操作系统和Python版本编译了不同的版本。您可能需要TA_Lib-0.4.10-cp35-cp35m-win_amd64.whl

祝你好运。

答案 1 :(得分:3)

http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-msvc.zip下载ta-lib-0.4.0-msvc.zip并解压缩到C:\ta-lib

这是一个32位版本。如果要使用64位Python,则需要构建64位版本的库。

有关在64位Windows 10上构建的一些非官方(和不受支持)的说明,此处供参考:

  1. 下载并解压缩ta-lib-0.4.0-msvc.zip

  2. 将解压缩的文件夹ta-lib移至C:\

  3. 下载并安装2015年或2017年的Visual Studio社区 - 我不得不做大安装 - 别无他法

  4. 请记住选择[Visual C ++]功能

    1. 构建TA-Lib库 - 从Windows开始菜单,启动[VS2015 x64 Native Tools命令提示符]
    2. cdC:\ta-lib\c\make\cdr\win32\msvc

      键入nmake

      构建库
      1. 尝试再次从ta-lib或pycharm等安装pip

答案 2 :(得分:1)

来自https://github.com/mrjbq7/ta-lib

'这通常意味着它无法找到底层的TA-Lib库,这是一个需要安装的依赖项。'

首先从这里安装底层TA-Lib库: https://www.ta-lib.org/hdr_dw.html

我使用了'ta-lib-0.4.0-msvc.zip'之一。

然后从https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

下载whl文件

我使用'TA_Lib-0.4.16-cp35-cp35m-win_amd64.whl'一个。

我无法记得,但我认为我最后也运行了pip install TA-Lib

答案 3 :(得分:1)

我在使用Visual Studio尝试使用Anaconda 5.1.0和Python 3.6时遇到了同样的问题。

解决方案是从https://www.lfd.uci.edu/~gohlke/pythonlibs获得一个轮子,然后通过pip安装它。你需要确保轮子匹配你的python版本(在我的例子中,3.6)。

在Anaconda,我刚刚打开一个提示,导航到车轮所在的位置,然后执行以下操作: python -m pip install TA_Lib-0.4.17-cp36-cp36m-win_amd64.whl

对于Visual Studio,它更加迟钝。转到Python Environments选项卡,选择' Overview'在下拉菜单中,然后`在PowerShell中打开'。此时,运行与上面的ANaconda相同的命令。

Python for Visual Studio shell shortcut

答案 4 :(得分:1)

从以下位置下载相关程序包

https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

  TA_Lib‑0.4.17‑cp36‑cp36m‑win_amd64.whl (Since I have python 3.6, cp36)

并使用

  pip install TA_Lib‑0.4.17‑cp36‑cp36m‑win_amd64.whl

答案 5 :(得分:1)

您好,您可以按照以下步骤进行操作:

1。转到此页面:https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

选择python版本:cp35表示Python 3.5(例如64位)

2。下载程序包并解压缩到“ ... \ Python \ Python35 \ Scripts”

  1. 在cmd上并在同一目录“ ... \ Python \ Python35 \ Scripts”中输入:'pip3 install TA_Lib-0.4.17-cp35-cp35m-win_amd64.whl'条目

  2. 已安装!

答案 6 :(得分:0)

以下内容解决了我为python安装ta-lib的问题:

1.-操作系统:Windows 10 Python:2.7,嵌入在miniconda中。 迷你康达:64位(https://conda.io/miniconda)。 PyCharm 2018.1.4社区版(https://www.jetbrains.com/pycharm/)。

2。-您需要将ta-lib转换为64位。您可以在这里找到已转换的内容: https://github.com/afnhsn/TA-Lib_x64 该站点还告诉您该怎么做,但是我在这里解释了其中没有包括的几个步骤,或者使您感到困惑。 重要的是,不要仅将文件“ ta-lib x64.zip”解压缩为“ C:\”。压缩文件中有一个“ ta-lib”文件夹。此文件夹必须位于“ C:\”

3.-从同一个github帐户下载并执行C ++构建工具('en_visual_cpp_build_tools_2015_update_3_x86_x64_8923157.exe')

4.-需要Microsoft Visual C ++ 9.0。从http://aka.ms/vcpython27获取 如果尚未安装,则必须下载并安装。

5.-在您的python环境中,运行“ pip install ta-lib”。

这对我有用,我希望此信息对您有用。

注意:当时,没有针对Python 3.x开发的TA-lib,这就是为什么我使用Python 2.7

答案 7 :(得分:0)

虽然有类似的答案,但我想我会加以解决。

  1. 转到https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib并下载相关的.whl文件。

    根据给出的信息,我建议使用文件名TA_Lib‑0.4.17‑cp35‑cp35m‑win_amd64.whl

  2. 我发现Anaconda环境非常适合python,因此建议安装Anaconda,并将文件放置在Anaconda提示符下显示的相同文件夹位置。

    screenshot of Anaconda installer

    在Anaconda提示符中,使用pip install命令和下载文件的文件名。

  3. 由于我们已下载文件TA_Lib‑0.4.17‑cp37‑cp37m‑win_amd64.whl,因此命令为:

    pip install TA_Lib‑0.4.17‑cp35‑cp35m‑win_amd64.whl`
    

如果没有错误,则表明我们已成功安装Ta-Lib。

您应该得到类似以下的内容:install Ta-lib

来源:https://blog.quantinsti.com/install-ta-lib-python/

答案 8 :(得分:0)

安装更新的 Visual Studio 2015、2017和2019的Microsoft Visual C ++ Redistributable
https://support.microsoft.com/he-il/help/2977003/the-latest-supported-visual-c-downloads

为我工作。

答案 9 :(得分:0)

即使有这么多人面临同样的问题,也要花费大量的时间。长话短说WINDOWS *** T。我在Windows 10上运行python3.7

这里有足够的抱怨是对我有用的步骤

  1. 安装Visual C ++生成工具(https://www.youtube.com/watch?v=P4_R34Lb-PEhttps://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019
  2. 在安装构建工具时,请确保您已选择Windows10 SDK,该文件解决了一些io.h文件未找到错误。我必须通过添加Visual C ++组件多次修改安装。 Here's selection that I finally have
  1. pip3 install ta-libpython3 -m pip install ta-lib无效。起作用的是如上所述下载那些.whl文件[https://www.lfd.uci.edu/~gohlke/pythonlibs],由于我有python3.7,因此必须选择一个带有cp37的文件(TA_Lib-0.4.18 -cp37-cp37m-win_amd64.whl)。

我希望我不会错过任何一个步骤,但是当我发现以上步骤时,我已经大了4个小时了。

答案 10 :(得分:0)

为了使用 python 包,您首先需要依赖项。对于 Mac,您可以只使用 brew install ta-lib,然后 pip install TA-Lib 就可以正常工作。