【编程笔记】libevent探究——vs2008编译篇

编译

libevnet的GitHub地址为:https://github.com/libevent/libevent
我们打开其Release标签页在这里插入图片描述
可以看到各个发布版本,由于此次编译基于Vs2008,所以我们采用比较早期版本:v2.0.22-stable 2015年5月29号发布的版本。
接下来就是从Git上下载此版本代码,解压打开后目录如下:源码目录
接下来就是利用vs2008来编译libevent的源码了。我们在源码目录可以看到一个文件:Makefile.nmake,所以可以采用vs2008的命令行工具来进行编译:在这里插入图片描述
由于vs2008命令行cd命令好像无效,所以我们只能选择进一步将源码整个目录拷贝到:C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC(新修改:cd /d XXXXX 直接进入源码路径。20200929)在这里插入图片描述
考虑到lib文件区分有md、mdd、mt、mtd所以我们在编译前,修改makefile.nmake文件:在这里插入图片描述
修改完之后,我们打开vs2008命令行工具,注意区分:Vs2008命令提示和Vs2008 X64 Win64命令提示,一个是编译32位一个是编译64位。我们以编译32位举例,打开Vs2008命令提示(当然64位也是一样的):
在这里插入图片描述
命令如下:
cd libevent-2.0.22-stable
nmake /f makefile.nmake static_libs
如果想重新编译:
nmake /f makefile.nmake clean
nmake /f makefile.nmake static_libs
编译完后,在libevent-2.0.22-stable看到三个lib文件在这里插入图片描述
注:如果命令行是采用 nmake /f makefile.nmake all会看到如下错误,但是lib还是生成成功的,这主要是由于编译了test项目

NMAKE : fatal error U1073: 不知道如何生成“print-winsock-errors.obj”
Stop.
NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\HostX64\x64\nmake.exe"”: 返回代码“0x2”
Stop.

所以我们用nmake /f makefile.nmake static_libs指定只编译lib,其他项目不进行编译

相关推荐
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页