cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: linking against libcurl on windows *hides*

From: Brian Dessent <brian_at_dessent.net>
Date: Sun, 23 Apr 2006 12:29:08 -0700

Chris Baechle wrote:

> libraries. On windows, it seems you are supposed to use regsvr32 to
> register it, and after that I have know clue how to do the gcc
> equivalent of -l. Regsvr32 keeps given me an "libcurl.dll was loaded,
> but the DllRegisterServer entry point was not found. This file can not
> be registered". I've used regsvr32 before and have been able to
> successfully register libraries, but libcurl won't register. Msdn says
> that error means its not a valid dll. However, I even tried to
> register open office's libcurl.dll with the same results (and
> obviously that one is a valid dll).

Uh, no. You don't have to touch regsvr32 at all. That is only used
when a package implements a OLE/COM/ActiveX class, and regsvr32 is used
to register that class with the operating system. The error that you're
getting means that there is no entry point "DllRegisterServer" which is
only present if a DLL implements a COM class/server. COM is a 800lb
gorilla that lots of MS tools use but it is a completely separate higher
layer that has nothing inherently to do with dynamic libraries or DLLs.

Libcurl most certainly doesn't have anything to do with COM. DLLs are
not anything special, they are just shared libraries like on *nix. In
fact if you were using mingw or cygwin it really would be as simple as
adding "-lcurl" to the end of the link command line. If you're using MS
tools you just need to add the import library (.lib) to the list of
libraries to link against, either in the project settings or in the
command line.

Brian
Received on 2006-04-23