Назад | Перейти на главную страницу

Как скомпилировать Mod_Python 3.3.1 для Python 2.6 и Apache 2.2 в Windows?

У меня нет опыта компиляции кода, кроме использования команды Visual Studio Build. Я надеюсь, что мы сможем создать пошаговое руководство для компиляции mod_python на окнах. Пожалуйста, будьте как можно более информативными.

Вот что я сделал до сих пор:

  1. Загрузить и установить Python 2.6.2
  2. Загрузить и установить apache 2.2.11
  3. Загрузите самый последний исходный код для mod_python из svn

Отсюда я не понимаю, каков следующий шаг. Я скачал Microsoft Visual C ++ 2008 Express Edition.

Сообщения об ошибках, которые я получаю при запуске руководства, упомянутого Брэдом.

C: \ mod_python \ dist> build_installer.bat Не удалось найти C: \ mod_python \ src * .obj запущен bdist_wininst запущен build запущен build_py создание сборки создание build \ lib.win32-2.6 создание build \ lib.win32-2.6 \ mod_python копирование C : \ mod_python \ lib \ python \ mod_python \ apache.py -> build \ lib.win32-2.6 \ mod _python копирование C: \ mod_python \ lib \ python \ mod_python \ cache.py -> build \ lib.win32-2.6 \ mod_ python копирует C: \ mod_python \ lib \ python \ mod_python \ cgihandler.py -> build \ lib.win32-2.6 \ mod_python копирует C: \ mod_python \ lib \ python \ mod_python \ Cookie.py -> build \ lib.win32 -2.6 \ mod _python копирование C: \ mod_python \ lib \ python \ mod_python \ importer.py -> build \ lib.win32-2.6 \ m od_python копирование C: \ mod_python \ lib \ python \ mod_python \ psp.py -> build \ lib.win32-2.6 \ mod_py thon копирование C: \ mod_python \ lib \ python \ mod_python \ publisher.py -> build \ lib.win32-2.6 \ mod_python копирование C: \ mod_python \ lib \ python \ mod_python \ python22.py -> build \ lib.win32-2.6 \ m od_python копирование C: \ mod_python \ lib \ python \ mod_python \ Session.py -> build \ lib .win32-2.6 \ mo d_python, копирующий C: \ mod_python \ lib \ python \ mod_python \ testhandler.py -> build \ lib.win32-2. 6 \ mod_python копирование C: \ mod_python \ lib \ python \ mod_python \ util.py -> build \ lib.win32-2.6 \ mod_p ython копирование C: \ mod_python \ lib \ python \ mod_python__init __. Py -> build \ lib.win32 -2.6 \ m od_python запуск build_ext создание расширения 'mod_python_so' создание сборки \ temp.win32-2.6 создание сборки \ temp.win32-2.6 \ Release создание сборки \ temp.win32-2.6 \ Release \ mod_python создание сборки \ temp.win32-2.6 \ Release \ mod_python \ src C: \ Program Files \ Microsoft Visual Studio 9.0 \ VC \ BIN \ cl.exe / c / nologo / Ox / MD / W 3 / GS- / DNDEBUG -DWIN32 -DNDEBUG -D_WINDOWS -IC: \ mod_python \ src \ include -Ic: \ apa che \ include -IC: \ Python26 \ include -IC: \ Python26 \ PC / TcC: \ mod_python \ src \ mod_pyth on.c / Fobuild \ temp.win32-2.6 \ Release \ mod_python \ src \ mod_python.obj mod_python.cc:\apache\include\ap_config.h(25): фатальная ошибка C1083: не удается открыть включаемый файл: 'apr.h': нет такого файла или ошибки каталога: команда '"C: \ Program Files \ Microsoft Visual Studio 9.0 \ VC \ BIN \ cl.exe "не удалось со статусом выхода 2

На вашем месте я бы посмотрел, если бы использовал mod_wsgi вместо mod_python можно. (Обычно это так). mod_python имеет несколько проблем и не поддерживается. Никого это больше не интересует. mod_wsgi, с другой стороны, является активно поддерживаемой современной альтернативой. И для вас доступна двоичная загрузка.

Да, это не прямой ответ на ваш вопрос, но я искренне считаю, что лучше взглянуть на mod_wsgi, чем возиться с mod_python, если это возможно.

Вытащен из Вот:

Загрузите исходный код apache для целевой версии и распакуйте его в «C: \ Apache».

После установки python убедитесь, что он находится в вашем PATH

Магистраль SVN будет включать скрипт сборки Windows для mod_python, который создает два продукта: сам mod_python и «PSP», что означает «страницы сервера Python». Сборка PSP для меня не удалась из-за "@ ARCHFLAGS @". PSP мне не нужна, поэтому я отключил ее в скрипте сборки.

В mod_python \ dist \ setup.py.in отредактируйте строку 171 с: ext_modules = [ModPyModule, PSPModule] на: ext_modules = [ModPyModule] #, PSPModule]

Компиляция

Откройте командную строку с поддержкой VS2008. Самый простой способ сделать это - использовать «Пуск | Все программы | Microsoft Visual Studio 2008 | Инструменты Visual Studio | Командная строка Visual Studio 2008». (Это помещает двоичные файлы VS2008 в путь и устанавливает переменные среды lib / include для Platform SDK.)

cd в папку mod_python \ dist.

Сообщите mod_python, где находится Apache: установите APACHESRC = C: \ Apache

Запустите build_installer.bat.

В случае успеха во вложенной папке будет создан файл installer.exe. Запускаем установку модуля.