2012-04-20 2 views
0

Я строю libcurl для использования с проектом, над которым я работаю, и после прочтения немного о том, как правильно его построить, я нашел 2 способа сделать это.libcurl предпочитаемый метод сборки

Метод 1:
(отредактированный Makefile в корневой директории, чтобы изменить "VC = VC6" до "VC = VC10")
C:\dev\curl-7.25.0>set ZLIB_PATH=C:\dev\zlib-1.2.6
C:\dev\curl-7.25.0>nmake vc-zlib

Способ 2:
(Put необходимые файлы для Zlib в ../deps & редактировать Makefile, чтобы сделать USE_IDN = нет на самом деле не работают)
C:\dev\curl-7.25.0\winbuild>nmake /f Makefile.vc mode=static VC=10 WITH_ZLIB=sta tic DEBUG=no USE_IDN=no WITH_DEVEL=../deps

Обе работы без ошибок.

Испуганная часть - файлы libcurl.lib, полученные в результате, имеют разные размеры. Итак, есть ли какие-нибудь губы libcurl, которые могут рассказать мне разницу между этими 2 методами сборки и которые рекомендуется использовать?

+0

Возможно, один метод компилируется из статической библиотеки (а вывод больше), а другой метод - из динамических библиотек (а выход меньше)? –

+0

@smink Нет, оба являются определенными статическими библиотеками. – Josh

ответ

0

Итак, до сих пор я понял, что метод 1 требует, чтобы вы связали свою заявку с Ws2_32.lib и Wldap32.lib, где метод 2 не является (возможно, причиной для дополнительного размера).

Также метод 1 имеет несколько меньший выходной исполняемый файл.

Мне действительно интересно, есть ли какие-либо другие отличия.

+1

запустите 'curl -V', чтобы убедиться, что у них одинаковый набор функций –

Смежные вопросы