edit: Использование ваших менеджеров пакетов часто предпочитает использовать собственные пакеты при использовании системного perl, у cygwin есть пакет для perl-WWW-Curl
, устанавливайте этот пакет, а не создавайте свой собственный.
Скорее всего, я думаю, что вам не хватает пакета libcurl-devel
.Хотя вы упоминаете, что libcurl
установлен, убедитесь, что libcurl-devel
установлен через приложение управления пакетами cygwin, и попробуйте еще раз, если это необходимо.WWW:Curl
будет искать правильный путь включения, ища curl/curl.h
, если он не может найти файл, то он может искать в неправильных местах, вам придется выполнить установку вручную:
- скачайте и распакуйте пакет из cpan
- прочитайте включенный
README
файл, чтобы понять этот процесс - найдите в вашей установке cygwin файл с именем
curl/curl.h
обратите внимание на каталог, в котором он находится. - изменить
Makefile.PL
так, чтобы @includes
содержал указанную выше директорию. - run
perl Makefile.PL
- run
make && make install
Этот процесс по сути та же проблема, что и процесс установки нативного Win32 / strawberry perl, поскольку он не знает, где находится libcurl.Вы можете проверить файл README.Win32 для получения аналогичных инструкций.
Пакет libcurl-devel устанавливает файл curl/curl.h
в usr/include/
, который является путем, который уже ищется Makefile.PL
.
Чтобы вы не сказали, где искать, найдите curl.h
, вы можете сделать следующее:
find / -name curl.h
Но имейте в виду, что это может занять много времени, вы можете попробовать определенные места, такие каккак /usr
find /usr -name curl.h
Или, что еще лучше, вы можете посмотреть содержимое пакета, чтобы найти расположение файла:
https://cygwin.com/cgi-bin2/package-cat.cgi?file=x86%2Flibcurl-devel%2Flibcurl-devel-7.41.0-1&grep=libcurl
Чтобы повторить ответ Александра, LWPудобнее использовать кроссплатформенность, при этом охватывая те же функции, но и гораздо больше.