На данную тему есть хорошее руководство “PyPy on Windows”, которое послужило для меня отправной точкой. Здесь я опишу некоторые дополнительные детали, которые могут вам пригодиться при сборке c использованием компилятора Microsoft Visual С++.
В первую очередь понадобиться свежая версия Python 2.x (обязательно x32-bit) или уже собранный PyPy (рекомендуется для более быстрой сборки). Интересно, что во втором случае происходит процесс сходный раскрутке компилятора. Процесс сборки потребляет большое количество оперативной памяти, и эта величина больше 2Гб:
В тоже время наш интерпретатор x32-bit, поэтому к python.exe (или pypy.exe) требуется применить небольшой hack:
Данную утилиту можно найти в папке с установленным Microsoft Visual C++ (например, “c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\editbin.exe”). Стоит отметить, что на Windows x64-bit необходимо запускать версию, которая лежит в подпапке amd64. В случае успешного применения, дата и время модификация целевого файла должны измениться.
Все необходимые дополнительные библиотеки (zlib, bz2, expat, openssl) собираются вполне успешно. Единственная проблема возникла с OpenSSL, компиляция которой не проходила из-за одного warning, что вылечилось простым удалением флага “/WX” из файла “ms/nt.mak”. Сборку этих библиотек и самого PyPy необходимо выполнять, предварительно запустив “Visual Studio Command Prompt” (vsvars32.bat).
Теперь осталось только настроить пути к сторонним библиотекам. Пути ко всем их заголовочным файлам надо добавить в переменную окружения INCLUDE, пути к статическим библиотекам (.lib) – в LIB, пути к динамическим библиотекам (.dll) – в PATH. Я для этого создал три папки bin, include и lib. Затем скопировал туда все необходимые файлы и в переменные окружения добавил пути только к этим папкам. В итоге получилось следующая структура папок и файлов:
Ну вот! Вроде все. Можно приступить к сборке PyPy…
Комментариев нет:
Отправить комментарий