Il n'y a pas de réponse simple :) Libcurl dépend d'autres bibliothèques tierces (cela dépend de la distribution binaire que vous utilisez). Comme vous vous débarrassez de DLL - vous devrez créer un lien avec les tiers correspondants manuellement.
Ok, donc le premier point est que vous ne devriez pas lier à libcurl.lib car il vous lie à DLL que vous ne voulez pas.
Deuxième point - lorsque vous liez avec libcurl_static.lib puis (comme mentionné ci-dessus), vous devrez également lier avec les bibliothèques dont il dépend. Simple façon de le faire est de faire quelque chose comme ceci:
#if defined CURL_STATICLIB
#if defined _DEBUG
#pragma comment(lib, "libcurl-7.19.3-win32-ssl-msvc\\lib\\Debug\\curllib_static.lib")
#else
#pragma comment(lib, "libcurl-7.19.3-win32-ssl-msvc\\lib\\Release\\curllib_static.lib")
#endif
#pragma comment(lib, "ws2_32.lib")
#pragma comment(lib, "libcurl-7.19.3-win32-ssl-msvc\\libeay32.lib")
#pragma comment(lib, "libcurl-7.19.3-win32-ssl-msvc\\openldap.lib")
#pragma comment(lib, "libcurl-7.19.3-win32-ssl-msvc\\ssleay32.lib")
#endif
Mais cette façon - vous obtiendrez trois autres dépendances. Alternativement, vous pouvez rechercher un moyen de les relier statiquement, mais c'est une histoire différente.
Comme une autre alternative - vous pouvez reconstruire libcurl_static.lib des sources après la désactivation de toutes les fonctionnalités que vous n'avez pas besoin éliminant ainsi les dépendances indésirables (comme décrit dans « Désactivation des protocoles spécifiques dans Win32 builds » du fichier INSTALL) .
Et le point final - comme libcurl a un support assez pauvre pour la compilation de Windows à partir de sources, je vous recommande de revisiter l'idée de se débarrasser de curllib.dll.