Windows下编译WPA Supplicant
下载WinPcap 下载WpdPack_4_0_2.zip,解压到C:\dev\WpdPack。 编译OpenSSL 下载openssl-1.0.1e.tar.gz并解压。 在\include\openssl\x509v3.h里添加: #ifdef OPENSSL_SYS_WIN32 /* Under Win32 these are defined in wincrypt.h */ #undef X509_NAME #undef X509_CERT_PAIR #undef X509_EXTENSIONS #endif 安装ActivePerl 打开VS命令提示行,进入OpenSSL路径,依次输入以下命令: perl Configure VC-WIN32 no-asm --prefix= C:\dev\OpenSSL ms\do_ms nmake -f ms\ntdll.mak nmake -f ms\ntdll.mak install 编译WPA Supplicant 下载wpa_supplicant-0.7.3.tar.gz并解压。 用VS2008打开vs2005\wpa_supplicant.sln,编译即可。 问题与解决 OpenSSL的宏定义和VS的wincrypt.h的宏定义冲突,需要按上述方法取消宏定义。 wpa_supplicant-2.0在Windows下编译有很多问题,用0.7.3版可以编译。 VS2005在编译时会提示“调试信息损坏,请重新编译模块”,经查询是VS2005自身的bug,改用VS2008可编译。