cURL / Mailing Lists / curl-library / Single Mail


Re: VC8 Makefiles

From: Yang Tse <>
Date: Fri, 16 Mar 2007 16:41:09 +0100

2007/3/16, Jonathan Arnold wrote:

> [...] Someone who is writing a simple app using libcurl might want to
> keep it as a DLL without shipping the entire MS runtime DLLs.

I agree with that, but if the app is as simple as that, then it would
make more sense to just build the whole app static, linking with the
static libcurl lib and static CRT. Result, all in one exe, CRT

> So basically I don't think it is necessarily encouraging bad practices and
> there are some very compelling reasons for having a staticaly linked DLL.

Certainly, allowing it is not encouraging bad practices, its just a
matter of allowing dangerous ones. After all who cares if from time to
time there's someone who has shoot his feet and doesn't have a clue of
why his program is crashing. ;-)

> could even been a warning in the README,

Yes certainly at least this should be mentioned quite clearly in the
docs/INSTALL file in the Win32 section. I don't know if its ok for
Daniel if the link to the MS article is also included there. Maybe you
could even write up the warning. As I'm so biased against DLLs linked
with the static CRT, I could scare someone more than it is reasonable.

I you write it, suppose the intended audience might not even know what
the CRT is, let alone all different versions and implications.

> [...] There are
> reasons to do it, very good ones IMHO, and curl shouln't be putting roadblocks
> in the way.

As a matter of fact if you look up the libcurl Makefile.vc6 files
you'll see that they allow it, and that I've never modified them in
any way that would disallow it.

But this time, I felt as rising the issue and trying to make clear
some points. Its a pity that no one else has joined this part of the
thread and commented other pros and cons

> Well, I guess we'll just have to agree to disagree.

I can look in another direction if you write something up for the docs
mentioning at least the relevant parts of all this. and the link to
Q94248 if its ok with Daniel.

> Using mismatched runtime
> linking is a more certain death than using static linked DLLs in my opinion.

Yes, that is completely true.

> And forcing a particular linking scheme on someone also isn't very friendly.

Ok, lets be friendly and hand them the gun ;-)

BTW they already have it. :-) :-) :-) :-)


Received on 2007-03-16