Как установить Python ssl модуль в Windows?

Google App Engine Launcher говорит мне:

ПРЕДУПРЕЖДЕНИЕ appengine_rpc.py:399 ssl модуль, не найденный. Без ssl модуля не могут быть проверены идентификационные данные удаленного хоста, и соединения НЕ могут быть безопасными. Для фиксации этого установите ssl модуль с http://pypi.python.org/pypi/ssl.

Я загрузил пакет, и он содержал a setup.py файл. Я работал:

python setup.py install

и затем:

Python was built with Visual Studio 2003; blablabla use MinGW32

Тогда я установил MinGW32, и теперь компиляция не работает. Конец ошибок компиляции содержит:

ssl / _ ssl2.c:1561: ошибка: необъявленный 'CRYPTO_LOCK' (сначала используют в этой функции),

ошибка: управляйте 'gcc', отказавшим со статусом выхода 1

Что я должен сделать?

20
задан Jader Dias 14 February 2010 в 16:48
поделиться

2 ответа

Возьмите openssl и libgw32c из проекта gnuwin32 (скачайте "Файлы разработчика"!) и извлеките их туда, где вы установили gnuwin32 - или, если у вас еще нет инструментов gnuwin32, вы можете распаковать их где угодно (например, "C: \ Program Files \ gnuwin32 "). Введите каталог gnuwin32 в файл «setup.py» (замените «C: \ Utils \ GnuWin32» в строке 154).

Тогда вы сможете без проблем собрать модуль ssl . Я тестировал это сам, используя GCC «4.3.2-tdm-2 mingw32» и с помощью командной строки setup.py build -cmingw32 ( -cmingw32 заставляет MinGW, так как у меня также есть Microsoft компилятор установлен). После успешной сборки выполните setup.py install , чтобы установить ssl .

15
ответ дан 30 November 2019 в 00:43
поделиться

Мне пришлось использовать следующую модификацию подхода AndiDog:

setup.py build -cmingw32
setup.py install --skip-build

Без опции --skip-build программа установки попыталась бы выполнить сборку снова и снова пожаловаться на MSVC:

error: Python was built with Visual Studio 2003;
extensions must be built with a compiler than can generate compatible binaries.
Visual Studio 2003 was not found on this system. If you have Cygwin installed,
you can try compiling with MingW32, by passing "-c mingw32" to setup.py.

Кроме того, первоначально при использовании команды build У меня было много таких ошибок:

build\temp.win32-2.5\Release\ssl\_ssl2.o:_ssl2.c:(.text+0x1d): undefined reference to `_imp__PyImport_ImportModule'
build\temp.win32-2.5\Release\ssl\_ssl2.o:_ssl2.c:(.text+0x34): undefined reference to `_imp__PyObject_GetAttrString'
build\temp.win32-2.5\Release\ssl\_ssl2.o:_ssl2.c:(.text+0x53): undefined reference to `_imp__PyCObject_AsVoidPtr'

Это произошло потому, что я изначально установил 64-битную версию Python 2.5.4 (python-2.5.4.amd64.msi). Я удалил это и установил 32-битную версию (python-2.5.4.msi). Сюда входит файл libpython25.a, который искала команда сборки.

9
ответ дан 30 November 2019 в 00:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: