声明:

本文经过https://blog.csdn.net/zjkc_yf/article/details/122693956的指导实战后进化而来.补充了一些要点.

首先准备素材:

不要盲目追新版本. 我按网上GitHub下的websocket4.3版本main版本 openssl最新WinOpenSSL啥的,全部都是坑爹货!最后生成一大堆编译错!根本出不了.lib 和DLL

工具和原料准备:

1.strawberry-perl-5.38.2.2-64bit.msi 那个什么所谓的ActivePerl已经完蛋了.勿念.

下回来一路无脑安装.完了打开命令行 perl -v有东西表示OK. 没东西,那你自己去百度.

2.cmake-3.18.0-win64-x64 用来生成VS工程.(请勿盲目追新,一样有坑!)

3.Visual Studio 2017. 原文用的2019.但我没有.

4.openssl-1.1.1.tar.gz 原文有下载方式.下完解压

5.zlib-1.2.11.tar.gz 原文也有下载方式.下完解压

6.libwebsockets-4.0.0.tar.gz 原文也有下载方式.下完解压

东西准备好齐活之后

1.先编zlib.这个没多少坑.请移步zlib / win10 下 vs2019 编译 zlib 的方法

2.再编openssl,X86用X86 X64用X64.不要踩坑!比如X86看下图

然后输入如下命令.test的过程有一些错误.但可以无视

cd D:\BaiduNetdiskDownload\openssl-1.1.1
set LC_ALL=C
perl Configure debug-VC-WIN32 no-asm --prefix="D:\BaiduNetdiskDownload\openssl-1.1.1\bin\debug"
nmake 
nmake  test
nmake  install
nmake  clean

perl Configure VC-WIN32 no-asm --prefix="D:\BaiduNetdiskDownload\openssl-1.1.1\bin\release"
nmake  
nmake  test 
nmake  install 
nmake  clean

debug和release的openssl就出来了

接下来是我们的最终主角libwebsocket.(c++搞个东西真是费劲)

先去解压的目录新建一个build.然后用CMake-gui打开解压路径.按图做如下选择.

至于ZLIB 我当时是勾了并选了的.但是可能因为上面这个勾.所以并不起作用.我个人猜测 zlib不是必要选项

然后点Configre.如果还有红色,看看还有哪些漏了的,如果没有, 点Generate.然后打开工程指定x86 debug release开编.

然后用通义AI写了个websocket的服务器端demo,设定好库目录 拷贝好dll

运行成功.如下图

更多推荐