libffi с Visual Studio 2013
Мне нужно скомпилировать библиотеку libffi, чтобы использовать ее в проекте Visual Studio 2013.
Я использую libffi 3.0.13, скачанную с оригинальной страницы
Я изо всех сил пытался заставить это работать, следуя инструкциям, приведенным в README, или пытался придумать что-то сам, но в итоге довольно быстро потерпел неудачу.
Я старался:
используя среду Mingw для настройки libffi. Но это сделано для "gcc" и "make". Если я скомпилирую с помощью gcc, он, вероятно, не будет правильно связываться с проектом VS (верно?). Кроме того, у меня нет
make
(Я бы с радостью установил его, если бы компиляции gcc хватило)с использованием
../configure CC="../msvcc.sh -m64"
команда, как предложено в 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
программа неизвестна
1 ответ
Во -первых, прости мой плохой английский! Я решил эту проблему только сейчас!
- найди свой msvcc.sh
- измените его, найдите это положение:
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
- измените "D:/soft/Microsoft\ Visual\ Studio\ 12.0" на ваш путь!
- в cygwin: ./configure CC=E:/project/3rd_parth/libffi/libffi-3.0.13/msvcc.sh(также измените путь)
- сделанный!
Надеюсь, еще не поздно!