2014-02-06 180 views
2

我需要編譯libffi庫以在Visual Studio 2013項目中使用它。libffi與Visual Studio 2013

我使用libffi 3.0.13,從他們的original page

我一直在努力使其工作,按照README給出的指令,或試圖拿出自己的東西下載,但最終未能漂亮快速。

我想:

  • 使用MinGW的環境來配置libffi。但是這是爲'gcc'和'make'完成的。如果我用gcc編譯,它可能不會與VS項目正確鏈接(對吧?)。除此之外,我沒有make使用../configure CC="../msvcc.sh -m64"命令(我很樂意安裝它,如果GCC編譯就足夠了)

  • 在README建議,但我MinGW的不知道是什麼cl是。

  • 嘗試提供cl.exe的完整路徑,但編譯器未能通過配置測試。日誌顯示:

configure:3673: ../msvcc.sh conftest.c >&5 
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\cl.exe -MD -nologo -W3 conftest.c 
conftest.c 
LINK : fatal error LNK1104: cannot open file 'MSVCRT.lib' 
  • 使用Visual Studio外殼試過,但隨後的configure程序是未知

回答

3

第一,原諒我的英語不好!我剛剛解決了這個問題!

  1. 找到你msvcc.sh
  2. 修改它,發現這個現在的位置:
else 
    args="$md $args" 
    echo "$cl $args" 
    eval "\"$cl\" $args" 
    result=$? 
fi 

我添加一些標誌:

else 
    args="$md $args" 
    echo "********" 
    args=" $args -ID:/soft/Microsoft\ Visual\ Studio\ 12.0/VC/include/ -link -LIBPATH:D:/soft/Microsoft\ Visual\ Studio\ 12.0/VC/lib/ -LIBPATH:C:/Program\ Files\ \(x86\)/Microsoft\ SDKs/Windows/v7.1A/Lib/" 
    echo "********" 
    echo "$cl $args" 
    eval "\"$cl\" $args" 
    result=$? 
fi 
  1. 改變「D:/ soft/Microsoft \ Visual \ Studio \ 12.0」這些東西到你的路徑!
  2. cygwin:./configure CC = E:/project/3rd_parth/libffi/libffi-3.0.13/msvcc.sh(也改變路徑)
  3. 完成!

希望它不是太晚!

+0

謝謝你! – codekiddy