在 Macbook 上安装 TA-Lib

时间:2021-01-21 05:16:01

标签: python-3.x ta-lib

我正在尝试安装 TA-lib,但遇到了我不明白的错误。

我安装了 brew,并运行了以下命令: brew install ta-lib

这似乎有效,因为如果我重新运行它,我会收到一条说明 ta-lib 0.4.0 is already installed and up-to-date

但是,运行 pip3 install ta-lib 会导致以下错误。通过谷歌搜索,这似乎发生在没有首先安装 ta-lib 时,但不确定如何解决初始安装似乎没问题的情况。

pip3 install TA-lib
Collecting TA-lib
  Using cached TA-Lib-0.4.19.tar.gz (267 kB)
Requirement already satisfied: numpy in /Users/mf/venv/lib/python3.8/site-packages (from TA-lib) (1.19.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: Command errored out with exit status 1:
     command: /Users/mf/venv/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-install-armqiybl/ta-lib_03c018e0f8f24266a3c6fc47436cf143/setup.py'"'"'; __file__='"'"'/private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-install-armqiybl/ta-lib_03c018e0f8f24266a3c6fc47436cf143/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-record-q2zdmts7/install-record.txt --single-version-externally-managed --compile --install-headers /Users/mf/venv/include/site/python3.8/TA-lib
         cwd: /private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-install-armqiybl/ta-lib_03c018e0f8f24266a3c6fc47436cf143/
    Complete output (27 lines):
    /private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-install-armqiybl/ta-lib_03c018e0f8f24266a3c6fc47436cf143/setup.py:71: UserWarning: Cannot find ta-lib library, installation may fail.
      warnings.warn('Cannot find ta-lib library, installation may fail.')
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.14.6-x86_64-3.8
    creating build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/abstract.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/test_abstract.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/deprecated.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/__init__.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/stream.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/test_pandas.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/test_data.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/test_func.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    copying talib/test_stream.py -> build/lib.macosx-10.14.6-x86_64-3.8/talib
    running build_ext
    building 'talib._ta_lib' extension
    creating build/temp.macosx-10.14.6-x86_64-3.8
    creating build/temp.macosx-10.14.6-x86_64-3.8/talib
    clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -iwithsysroot/System/Library/Frameworks/System.framework/PrivateHeaders -iwithsysroot/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/Headers -arch arm64 -arch x86_64 -I/usr/include -I/usr/local/include -I/opt/include -I/opt/local/include -I/Users/mf/venv/lib/python3.8/site-packages/numpy/core/include -I/Users/mf/venv/include -I/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/include/python3.8 -c talib/_ta_lib.c -o build/temp.macosx-10.14.6-x86_64-3.8/talib/_ta_lib.o
    talib/_ta_lib.c:611:10: fatal error: 'ta-lib/ta_defs.h' file not found
    #include "ta-lib/ta_defs.h"
             ^~~~~~~~~~~~~~~~~~
    1 error generated.
    error: command 'clang' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /Users/mf/venv/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-install-armqiybl/ta-lib_03c018e0f8f24266a3c6fc47436cf143/setup.py'"'"'; __file__='"'"'/private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-install-armqiybl/ta-lib_03c018e0f8f24266a3c6fc47436cf143/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/p3/nd5fr9yd2xb7qnjnln6vk2cw0000gn/T/pip-record-q2zdmts7/install-record.txt --single-version-externally-managed --compile --install-headers /Users/mf/venv/include/site/python3.8/TA-lib Check the logs for full command output.

在找到 brew 安装 ta-lib 的位置后,我更新了 TA_LIBRARY_PATH & TA_INCLUDE_PATH,运行以下命令,pip3 install 似乎工作正常,但我无法实际导入它。尝试重新安装 ta-lib 后,出现与上述相同的错误。

export TA_LIBRARY_PATH=/opt/homebrew/opt/ta-lib/lib
export TA_INCLUDE_PATH=/opt/homebrew/opt/ta-lib/include

0 个答案:

没有答案