Где находится "curl.lib" для DMD? - PullRequest
8 голосов
/ 28 октября 2011

Когда я import etc.c.curl; DMD сообщает мне

Warning 2: File Not Found curl.lib

Где находится этот curl.lib?

(я пробовал несколько пакетов из http://curl.haxx.se/download.html, но ещея не нашел там curl.lib. В пакете MSVC libcurl-7.19.3-win32-ssl-msvc.zip есть curllib.lib, но DMD не будет с ним связываться.)

Ответы [ 2 ]

3 голосов
/ 29 октября 2011

Вы можете создать curl.lib, используя implib . Implib находится в Базовых Утилитах .

Запустите его для вашего curllib.dll в /libcurl-7.19.3-win32-ssl-msvc/lib/Release/ следующим образом:

implib /s curl.lib curllib.dll

Затем поместите curl.lib, где dmd сможет найти его и скомпилировать. К сожалению, вы, вероятно, по-прежнему получите ошибку об отсутствующем libsasl.dll при запуске вашей программы. Вы можете использовать двоичный файл из Shining Light Productions , создать его с помощью MSVC из источника OpenSSL или выследить его в Интернете.

Есть вероятность, что у вас будут проблемы с конфликтующими версиями. Если вы просмотрите исходный файл etc.c.curl, вы заметите, что он указывает свою версию cURL как 7.21.4, которая не соответствует ни одному из доступных двоичных файлов Windows. Если вы хотите что-то очень надежное, вам, возможно, придется подождать следующего модуля D cURL или собрать все самостоятельно.

0 голосов
/ 29 октября 2011

Пока нет, потому что поддержка Curl в D находится в стадии разработки.etc.c.curl был добавлен в Фобос с намерением добавить объектно-ориентированную оболочку.Эта обертка прошла раунд обзора и в настоящее время пересматривается в рамках подготовки к следующему раунду.curl.lib, вероятно, будет включен, по крайней мере, в Windows, когда поддержка Curl полностью реализована и эта оболочка включена.

...