2016-08-10 36 views
1

我已經嘗試了很長一段時間來安裝TA-lib的,所以我可以使用一些基於this github上例如對交易指示功能。到目前爲止,我已經決定,我需要:指南在Windows上安裝TA-lib中的Ruby寶石

  1. 運行gem install talib_ruby

    C:\Users\king\Desktop\_REPOS\misc\stock_analysis\forex\oanda\ruby>gem install talib_ruby 
    Temporarily enhancing PATH to include DevKit... 
    Building native extensions. This could take a while... 
    ERROR: Error installing talib_ruby: 
        ERROR: Failed to build gem native extension. 
    
    C:/Ruby22-x64/bin/ruby.exe -r ./siteconf20160810-7176-j5lye2.rb extconf.rb 
    checking for TA_Initialize() in -lta_lib... no 
    creating Makefile 
    
    make "DESTDIR=" clean 
    
    make "DESTDIR=" 
    generating talib-x64-mingw32.def 
    compiling talib.c 
    talib.c:2:32: fatal error: ta-lib/ta_abstract.h: No such file or directory 
    compilation terminated. 
    make: *** [talib.o] Error 1 
    
    make failed, exit code 2 
    .... 
    
  2. 下載TA-lib的頭文件,這是在MSVC從here

  3. 告訴talib_ruby寶石哪裏安裝時使用ta-lib文件。基於this SO post,正確的命令應該如下所示:sudo env ARCHFLAGS="-arch x86_64" gem install talib_ruby -- --with-talib-include=/opt/local/var/macports/software/ta-lib/0.4.0_0/opt/local/include/ta-lib --with-talib-lib=/opt/local/var/macports/software/ta-lib/0.4.0_0/opt/local/lib 。該命令指定了lib文件夾的路徑,該文件夾從我下載的ta-lib中丟失。有誰知道如何解決這一問題?

回答

2

Windows? 對不起,我的英語。 我的系統:Windows 7 SP1 x64,ruby 2.2.4p230

  1. 您必須安裝Ruby Development Kit來構建二進制擴展。
  2. 下載並解壓source,我用ta-lib-0.4.0-src.tar.gz。
  3. 從紅寶石的devkit運行msys.bat,導航到TA-lib的源文件(在我的情況下,它是/d/dev/ta-lib)和建庫:

    ./configure 
    make 
    
  4. 在該路徑C頭文件中的寶石hardcoded#include <ta-lib/ta_abstract.h> ,我只是在源文件夾的「include」文件夾中創建目錄「ta-lib」,並在這裏複製頭文件。 (文件在d:\ dev的\ TA-LIB \包括的* .h拷貝到d:\ dev的\ TA-LIB \ \包括TA-LIB)

  5. 安裝寶石

    gem install talib_ruby -- --with-talib-include=d:/dev/talib/include --with-talib-lib=d:/dev/talib/src/.libs 
    

    確保改變你的路徑。