Thread overview
Having trouble setting up libcurl on Windows 7
Mar 15, 2012
Gavin
Mar 15, 2012
Gavin
Mar 15, 2012
Brad Anderson
Mar 30, 2012
Gleb
Mar 30, 2012
Brad Anderson
Mar 30, 2012
Gleb
March 15, 2012
How do I setup libcurl on Windows 7?
I want to use the functions from the std.net.curl module.

Here's what I did:

I downloaded the zip file from here http://curl.haxx.se/libcurl/d/
According to the instructions in the read-me file, I did as it said, and I copied the files to my project directory. However it did not work.

I can't seem to figure out what's wrong.
March 15, 2012
On Thursday, 15 March 2012 at 08:59:58 UTC, Gavin wrote:
> How do I setup libcurl on Windows 7?
> I want to use the functions from the std.net.curl module.
>
> Here's what I did:
>
> I downloaded the zip file from here http://curl.haxx.se/libcurl/d/
> According to the instructions in the read-me file, I did as it said, and I copied the files to my project directory. However it did not work.
>
> I can't seem to figure out what's wrong.

I forgot to say I'm using Visual Studio 2010, and Visual D
March 15, 2012
On Thu, Mar 15, 2012 at 3:10 AM, Gavin <wzy17695@gmail.com> wrote:

> On Thursday, 15 March 2012 at 08:59:58 UTC, Gavin wrote:
>
>> How do I setup libcurl on Windows 7?
>> I want to use the functions from the std.net.curl module.
>>
>> Here's what I did:
>>
>> I downloaded the zip file from here http://curl.haxx.se/libcurl/d/ According to the instructions in the read-me file, I did as it said, and I copied the files to my project directory. However it did not work.
>>
>> I can't seem to figure out what's wrong.
>>
>
> I forgot to say I'm using Visual Studio 2010, and Visual D
>

2.058 for Windows was released without std.net.curl built in. You'll have to rebuild phobos to get it working. It's not too hard though.

Download this version of libcurl which has an dmd-compatible OMF curl
import library.
https://github.com/downloads/D-Programming-Language/dmd/curl-7.24.0-dmd-win32.zip

Just drop the top level dmd2 folder right into wherever you installed D.
 The directory layout matches D's installation so it'll put the dlls and
the import library where they need to go.

Next, download a replacement for win32.mak from my branch that enables curl
here:
https://raw.github.com/eco/phobos/9c2f390be07927ef08a9d681924afcb90892b3cb/win32.mak


Place that in D\dmd2\src\phobos\, overwriting the one that is already there.  Now open a command prompt to that same directory and type:

   make -f win32.mak unittest

The 'unittest' is optional and takes a lot longer but std.net.curl is checked so you'll get an early warning if something is wrong.  Finally, copy the resulting phobos.lib from the current directory into D\dmd2\windows\lib\, overwriting the one that is there.

If you want to distribute your application you'll need to include the curl dlls that are in the first download along with it.  Just dropping them in the same directory as your application should work fine (although its given us trouble with the autotester which is why this pull request hasn't been merged. I'm still trying to figure out what to do about it.).

Regards,
Brad Anderson


March 30, 2012
Hi guys!

Brad Anderson Wrote:
> On Thu, Mar 15, 2012 at 3:10 AM, Gavin <wzy17695@gmail.com> wrote:
> 2.058 for Windows was released without std.net.curl built in. You'll have
> to rebuild phobos to get it working. It's not too hard though.
I tried to rebuild Phobos using the instructions from this thread, but I didn't manage to get it work. More information about the errors is in this thread: forum.dlang.org/thread/rugjkrsqbnwlzlcsvbss@forum.dlang.org#post-rugjkrsqbnwlzlcsvbss:40forum.dlang.org

Maybe somebody who managed to get it built correctly can share phobos.lib for Windows 7 with curl support, please?
March 30, 2012
On Fri, Mar 30, 2012 at 1:52 AM, Gleb <s4mmael@gmail.com> wrote:

> Hi guys!
>
> Brad Anderson Wrote:
> > On Thu, Mar 15, 2012 at 3:10 AM, Gavin <wzy17695@gmail.com> wrote:
> > 2.058 for Windows was released without std.net.curl built in. You'll have
> > to rebuild phobos to get it working. It's not too hard though.
> I tried to rebuild Phobos using the instructions from this thread, but I
> didn't manage to get it work.
> More information about the errors is in this thread:
>
> forum.dlang.org/thread/rugjkrsqbnwlzlcsvbss@forum.dlang.org#post-rugjkrsqbnwlzlcsvbss:40forum.dlang.org
>
> Maybe somebody who managed to get it built correctly can share phobos.lib for Windows 7 with curl support, please?
>

Sorry for the trouble.  I should have checked this before I gave you the instructions.  The win32.mak replacement I offered you was actually created from HEAD, not the v2.058 tag so it included the removal of the __fileinit stuff that didn't happen until after 2.058.  You can find a proper win32.mak here: https://gist.github.com/3816217ffd041d62d6bd

For anyone coming across this thread from the archive, use the patch file also in the above link instead of the whole file replacement. Unfortunately 2.059 won't include the changes (I'm kind of at a loss with how to proceed) but the win32.mak differs from the 2.058 version so using the patch is necessary in order to not break things.

Regards,
Brad Anderson


March 30, 2012
On Friday, 30 March 2012 at 17:19:30 UTC, Brad Anderson wrote:
> You can find a proper
> win32.mak here: https://gist.github.com/3816217ffd041d62d6bd
It worked like a charm! Thanks a lot!