Hi, Jan.

> Konstantin Vlasov in gmane.comp.web.curl.library (Thu, 20 Apr 2017
> 16:02:31 +0300):
>>The problem is, I need static OpenSSL, not shared.

> Then you have no other choice than to accept the bigger size of OpenSSL
> 1.1.0, compared to OpenSSL 1.0.2.

The OpenSSL size difference has nothing to do with it. Even if I was working 
with 1.0.2, it has lib sizes of 13.7 + 2.1 Mb, so embedding them into libcurl 
would still increase it from 1 Mb to about 17 Mb.

Anyway, I think, there is some misunderstanding about my concerns, so I'll put 
it again plain and simple. Here are two experiments:

1.
* OpenSSL 1.1.0 static build;
* libcurl 7.52.1
* Building libcurl by going into lib/ and running:
  nmake /f Makefile.vc10 cfg=release-ssl

Result: libcurl.lib with size ~1 Mb.

2.
* Same OpenSSL 1.1.0 static build;
* Same libcurl 7.52.1 (slightly modified MakefileBuild.vc to accept new OpenSSL 
lib names);
* Building libcurl by going into winbuild/ and running:
  nmake /f Makefile.vc mode=static WITH_SSL=static DEBUG=no MACHINE=x86 
WITH_DEVEL=C:\Programs\OpenSSL\x32 ENABLE_SSPI=no ENABLE_WINSSL=no

Result: libcurl_a.lib with size ~21 Mb.

Obviously, the second build scenario embeds OpenSSL libs inside libcurl, while
the first scenario does not (I confirmed it by comparing the lists of symbols).

Why does the second scenario do it, and how to avoid it?

I need static libcurl.lib which uses static OpenSSL but does NOT contain it as
part of itself. Otherwise I would get link errors (symbol conflicts) when
building VirtualBox with both libcurl AND openssl. The first scenario gave me
exactly what I needed, but now in 7.54.0 it is deprecated. How do I get that
type of libcurl.lib now?


-- 
Bye.                                    With best regards,
                                        Konstantin Vlasov.

-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette:   https://curl.haxx.se/mail/etiquette.html

Reply via email to