curl / Mailing Lists / curl-library / Single Mail


Re: Build problems with DLL vs static

From: Don Landsom <>
Date: Thu, 24 May 2018 14:10:28 -0400

I'm having the exact same issue, Target build for XP SP3, Curl 7.59.0 /
7.60.0. OpenSSL builds without error as does Curl, but the curlversion info
doesn't show that OpenSSL is being available.

I purposely broke things by deleting the OpenSSL dll files just so that I
could determine that when building Curl, the linker was actually looking for
and accessing the dll file, and sure enough a bunch of unresolved external
error messages popped up. So I know OpenSSL is being referenced as Curl is
being linked, but somehow it's not accessible during run time.

I have an older build where OpenSSL does show up on the curlversion info,
and the Libcurl.dll is some 612 kb in size. However when looking at the new
build 7.59 or 7.60, the one in which SSL doesn't show up, the dll is
substantially smaller, after one build it was only 264 kb.

I can't figure it out.

----- Original Message -----
From: "dp" <>
To: <>
Sent: Thursday, May 24, 2018 1:26 PM
Subject: Build problems with DLL vs static

>I am still struggling with building a DLL version of libcurl using VC10. I
>am working in Windows XP/SP3, curl 7.59.0, and have OpenSSL 1.0.2
>installed. After emptying the "build" folder, I build curl two different
> nmake /f mode=dll VC=10 WITH_SSL=dll
> nmake /f mode=static VC=10 WITH_SSL=dll
> Both builds complete successfully. I then compile my test program two
> ways -- first using libcurl.lib (found in
> libcurl-vc10-x86-release-dll-ssl-dll-ipv6-sspi\lib) , and then
> libcurl_a.lib (found in
> libcurl-vc10-x86-release-static-ssl-dll-ipv6-sspi\lib). In the test
> program, I first call curl_easy_init(), which succeeds, and then
> curl_version_info(CURLVERSION_NOW). Here are the differences in the return
> values:
> version: dll=7.35.0; static=7.59.0
> host: dll=Windows; static=i386-pc-win32
> ssl_version: dll=NULL; static=OpenSSL/1.0.2n
> libz_version: dll=1.2.8; static=NULL
> Is the difference in versions expected? Also, SSL is not being added to
> the dll version, even though the CL commandline includes /DUSE_OPENSSL and
> /I"../../deps/include/openssl". I'm also puzzled by the inclusion of zlib
> in the DLL version, since it wasn't requested. Am I doing something wrong?
> -------------------------------------------------------------------
> Unsubscribe:
> Etiquette:

Received on 2018-05-24