Неважно, из какого источника исходит make
программа, она просто должна уметь выполнять Makefile. Чтобы скомпилировать vim с MinGW с помощью специального компилятора и Make_ming.mak
makefile, я использовал следующее:
- Экспортируйте переменную среды
CC
, установленную в соответствующий компилятор (в моем случае это был 32-битный файл с именем i686-pc-mingw32-gcc
).
- Экспортировать переменную среды
LD
, установленную для соответствующего компоновщика (в моем случае это было похоже, но с суффиксом -ld
вместо -gcc
). Убедитесь, что они находятся на $PATH
: я не уверен, какой вид экранирования вам следует сделать, чтобы заставить makefile работать, поэтому просто избегайте необходимости экранирования.
- Экспортируйте переменную среды
prefix
, указывающую на каталог, в котором находится mingw (в моем случае это было /usr/i686-mingw32
: я выполняю кросс-компиляцию).
- Для переменной среды экспорта
vim_cv_toupper_broken
задано значение yes
. Я не уверен, почему я сделал это.
Наконец запустите make:
cd {path/to/vim/repository}/src
make -f Make_ming.mak FEATURES=HUGE CROSS_COMPILE=i686-pc-mingw32- OPTIMIZE=SPEED VIMRUNTIMEDIR="C:\\vim73\\runtime" CROSS=yes ARCH=i686
. Вам определенно не нужны параметры CROSS_COMPILE
и CROSS
, а ARCH
, вероятно, следует опустить (или равно x86_64
). VIMRUNTIMEDIR
должен указывать на место, куда вы планируете установить vim. Хотя насчет побега не уверен.
Экспорт переменных среды, вероятно, следует выполнять с помощью
set var=value
, e.g.
set CC=x86_64-w64-mingw32-gcc
(используйте фактическое имя исполняемого файла). Если это не сработает, попробуйте переместить их в командную строку make:
make -f Make_ming.mak CC=x86_64-w64-mingw32-gcc LD=… …
.
И переменные для python (также должны присутствовать в командной строке):
PYTHON="P:\\ath\\to\\directory\\with\\python" PYTHONINC="P:\\ath\\to\\directory\\with\\python\\header\\files" PYTHON_VER=27 PYTHON_VER_LONG=2.7.5
. (Если используется установщик python msi PYTHONINC
, это %PYTHON%\\include
. На 90% это какой-то каталог, компонент конечного пути которого равен include
. Должен содержать не менее Python.h
файла.)
person
ZyX
schedule
07.10.2013