Возникли проблемы с установкой pycurl в Windows

У меня возникли проблемы с установкой pycurl на моем компьютере с Windows. Сначала я попробовал pip, но столкнулся с ошибкой «Укажите --curl-dir=/path/to/built/libcurl» и с тех пор попытался установить curl, прежде чем запускать его снова.

Я скачал curl с сайта http://curl.haxx.se/download.html и распаковал его. в свою папку.

Я пробовал следующее:

D:\Downloads\pycurl-7.19.5.1\pycurl-7.19.5.1>python setup.py install --curl-dir="D:\Downloads\curl-7.40.0\curl-7.40.0"

Но получил следующую ошибку.

Using curl directory: D:\Downloads\curl-7.40.0\curl-7.40.0
libcurl.lib does not exist at D:\Downloads\curl-7.40.0\curl-7.40.0\lib\libcurl.lib.
Curl directory must point to compiled libcurl (bin/include/lib subdirectories):

Я не могу найти этот файл libcurl.lib, который он ищет.

Любая помощь будет оценена по достоинству.

ОБНОВИТЬ:

Повторно загрузили новую библиотеку с того же веб-сайта, curl-7.40.0-win64, которая содержит файл libcurl.lib.

D:\Downloads\pycurl-7.19.5.1\pycurl-7.19.5.1>python setup.py install --curl-dir=
"D:\Downloads\curl-7.40.0-win64\curl-7.40.0-win64\"
Curl directory does not exist: D:\Downloads\curl-7.40.0-win64\curl-7.40.0-win64"


D:\Downloads\pycurl-7.19.5.1\pycurl-7.19.5.1>python setup.py install --curl-dir=
"D:\Downloads\curl-7.40.0-win64\curl-7.40.0-win64\lib"
Using curl directory: D:\Downloads\curl-7.40.0-win64\curl-7.40.0-win64\lib
libcurl.lib does not exist at D:\Downloads\curl-7.40.0-win64\curl-7.40.0-win64\l
ib\lib\libcurl.lib.
Curl directory must point to compiled libcurl (bin/include/lib subdirectories):
D:\Downloads\curl-7.40.0-win64\curl-7.40.0-win64\lib

D:\Downloads\pycurl-7.19.5.1\pycurl-7.19.5.1>

person Stewart Polley    schedule 02.02.2015    source источник
comment
Я скачал curl-7.40.0-win64, и в его каталоге lib определенно есть libcurl.lib. Может надо еще раз скачать?   -  person Paul Rooney    schedule 03.02.2015
comment
@PaulRooney Я повторно загрузил описанный вами файл, распаковал и попробовал еще раз. Смотрите мою правку.   -  person Stewart Polley    schedule 03.02.2015
comment
Можете ли вы загрузить файл колеса pycurl для своей версии python и попробовать установить его с помощью pip   -  person Solen'ya    schedule 14.12.2019


Ответы (3)


Разочаровывает, сколько времени я потратил на поиск решения этой проблемы в Интернете и, наконец, нашел все свои ответы в официальном pycurl веб-сайт

в моей системе Arch Linux у меня нет проблем с установкой pycurl, но я обнаружил все эти проблемы при попытке установить pycurl в Windows с помощью pip, выдавая ошибки:

“Please specify --curl-dir=/path/to/built/libcurl” error

и попытаться исправить эту ошибку с помощью тех же шагов, что и в вопросе «op», и получить точные ошибки.

.

Решение для Windows:

1- самый простой способ - загрузить готовые официальные пакеты, zip, exe или msi, как уже упоминалось здесь, официальные загрузки из здесь, обязательно выберите ссылка с той же версией вашего установленного python

например: pycurl-7.43.0.2 .win-amd64-py3.6.exe — это установщик для pycurl 7.43.0.2 в 64-битной Windows с установленным python 3.6.

2- трудный путь: Создание из исходного кода, как указано в их веб-сайт, это не очень хорошая идея, но все же возможно,

Создание PycURL из исходного кода не для слабонервных из-за множества возможных зависимостей, и каждая из этих зависимостей имеет свою собственную структуру каталогов, стиль конфигурации, параметры и особенности. Кроме того, разные зависимости имеют разные настройки для использования MSVCRT, и приложение должно иметь все его части, согласующиеся с одним параметром.

если вы продолжите чтение здесь, вы найдете подробные инструкции о том, как сборка из исходников

Наконец: я рекомендую использовать готовый пакет, который, я думаю, должен быть доступен для автоматической установки с помощью pip и избежать всех этих хлопот.

person Mahmoud Elshahat    schedule 14.11.2019
comment
Шаг 1 - это лучший ответ! Раздражает, что pyCurl-Homepage говорит, что вы должны иметь возможность устанавливать в Windows с помощью PIP, когда это явно не так. - person TJJ; 26.02.2020
comment
Установочный exe-файл будет работать для основной установки Python, однако для виртуальной среды, такой как pipenv, он не будет работать. В этом случае ответ Юань Цзи работает хорошо. - person RaelB; 19.11.2020
comment
Когда я устанавливаю с помощью установщика msi, я не могу импортировать pycurl - person user3273814; 10.12.2020

Еще один простой способ решить эту проблему — использовать коллекцию Кристофа Гольке Пакет расширения Python для Windows.

Вы можете использовать Ctrl+F и искать pycurl.

Или нажмите здесь.

person Yuan JI    schedule 06.11.2017
comment
Для меня это было проще всего, всем пользователям Windows стоит попробовать. Пример: pip install .\pycurl-7.43.0.5-cp39-cp39-win_amd64.whl. И тогда это сделано. - person jlr; 22.04.2021

Попробуйте скачать исходники и собрать его самостоятельно: в результате у вас должны получиться каталоги типа:

  • libcurl-vc12-x86-release-dll-ipv6-sspi-winssl
    • bin
      • curl.exe
      • libcurl.dll
    • include
      • *.h
    • lib
      • libcurl.lib

(или вы можете искать готовые двоичные файлы/заголовки с той же структурой каталогов). Затем вам нужно указать свой сценарий setup.py в этом каталоге, например:

python setup.py install --curl-dir="D:\..\libcurl-vc12-x86-release-dll-ipv6-sspi-winssl

И он будет успешно построен.

person Arkady    schedule 27.02.2015
comment
Я пытался его построить. Просто сдался и переделал проект с помощью Requests. - person Stewart Polley; 01.03.2015