使用 Visual Studio 编译 wget 为可执行文件

wget是一个在Linux/Unix下应用十分广泛的下载软件,详细介绍如下:http://www.gnu.org/software/wget/

前段时间在一个软件更新程序中使用system 函数通过命令行参数调用wget做FTP下载,但是后来增加了需要显示进度的功能,讨论后决定开始阅读wget代码并对其增加下载进度回调。

并将修改后的wget编译成静态库使用。

在此先给出如何使用VS将wget代码编译为可执行文件的过程

具体步骤如下:

1、将wget代码的src目录下文件加入VS的空工程中,此时直接编译将会产生大量错误,主要问题在于缺少预编译指令与openssl相关函数

2、添加openssl头文件,导入libeay32.lib与ssleay32.lib两个库文件,openssl头文件以及编译相关内容见:http://hi.baidu.com/mhsy2003/blog/item/85bfb14f2bc23a23aec3ab40.html

3、添加wget的预编译指令,

WINDOWS

_CONSOLE

HAVE_CONFIG_H

HAVE_SSL

__STDC__ = 1

到此已完成wget在VS下的编译工作,已经可以生成相应的exe。

接下来的工作就是从代码中抽取出下载相关API供调用,以及添加下载进度回调的功能。

posted @ 2011-07-04 16:05  BlueGlass  阅读(1525)  评论(0编辑  收藏  举报