WebSocket使用(C++环境)(二) --- libwebsockets库的安装与使用

news/2024/7/4 9:05:10

一、参考网址:

libwebsockets官网:  https://libwebsockets.org/

libwebsockets的API:https://libwebsockets.org/lws-api-doc-master/html/modules.html

                                 https://libwebsockets.org/libwebsockets-api-doc.html

二、libwebsockets的安装

1、下载

git下载网址:https://github.com/hfeeki/libwebsockets

2、安装(具体参考README.build.md)

cd libwebsockets-master

mkdir build

cd build

cmake .. -DLIB_SUFFIX=64 -DLWS_WITH_HTTP2=1     -DLWS_OPENSSL_INCLUDE_DIRS=/usr/include/openssl -DLWS_OPENSSL_LIBRARIES="/usr/lib64/libssl.so;/usr/lib64/libcrypto.so"

what!什么情况?

SSL_TLSEXT_ERR_NOACK 没有声明?莫慌!

vi /usr/include/openssl/tls1.h

确实木有声明!目前openssl版本为0.9.8。

OK!可能是版本有问题。

重新下一个openssl 1.0.1版本

vi /usr/include/openssl/tls1.h

哦也!找到了!

重新cmake

幸福来得太突然!

注意:libwebsockets  v2.1 需要openssl 1.0.1及以上版本才行!

三、编译测试程序

编译好的libwebsockets静态库和动态库在 libwebsockets-master/lib/build/lib 中

libwebsockets.h在 libwebsockets-master/lib/ 中

编译测试程序按正常的套路走


http://www.niftyadmin.cn/n/3585855.html

相关文章

Cocos2d-x常用功能-Cocos2d-x用户交互事件处理:触摸、传感器、物理按键

第三阶段:常用功能3---Cocos2d-x常用功能-Cocos2d-x用户交互事件处理:触摸、传感器、物理按键(共6部分)1.Cocos2d-x单点触摸Size size Director::getInstance()->getVisibleSize(); autolabel LabelTTF::creat…

PHP输出图像imagegif、imagejpeg与imagepng函数用法

详细的分析了imagegif()、imagejpeg()、imagepng()和imagewbmp()函数的功能、参数含义及使用技巧 imagegif()、imagejpeg()、imagepng() 和 imagewbmp() 函数分别允许以 GIF、JPEG、PNG 和 WBMP 格式将图像输出到浏览器或文件。 PHP 输出图像 PHP 允许将图像以不同格式输出&…

nginx 版本升级和添加模块详解

版本升级 把1.16.0版本升级为1.18.0 查看本机现在版本为1.16.0 [rootlocalhost ]# /usr/local/nginx/sbin/nginx -v nginx version: nginx/1.16.0 1,下载1.18.0的版本 [rootlocalhost ]# wget http://nginx.org/download/nginx-1.18.0.tar.gz 2,解压 […

nginx 证书申请和证书的使用

1,证书申请 申请证书要有阿里云的域名 阿里云提供免费的证书,不需要人工审核,用来做测试是非常不错的选择,申请地址如下URL。 购买完了以后申请证书 证书签发之后,可以在列表中可以看到状态栏中为 已签发 &#xff0…

getopt和getopt_long函数

本文转自:http://blog.csdn.net/cashey1991/article/details/7942809 平时在写程序时常常需要对命令行参数进行处理,当命令行参数个数较多时,如果按照顺序一个一个定义参数含义很容易造成混乱,而且如果程序只按顺序处理参数的话&a…

'mysql.innodb_index_stats' doesn't exist when using LOCK TABLES问题原因及解决方法

前言 下面总结的是使用mysqldump备份整个数据库时的常见的一个报错的原因及解决方法。 报错如下 mysqldump: Got error: 1146: Table ‘mysql.innodb_index_stats’ doesn’t exist when using LOCK TABLES 执行导出数据库时报1146,mysql_innodb_table_stats显示没有…

数据Cocos2d-x常用功能-Cocos2d-x常用工具:计时器、数据读写、文件读写(共6部分)

第三阶段:常用功能5 1.Cocos2d-x计时器每一帧执行的时候执行一次#include "cocos2d.h"class HelloWorld : public cocos2d::Layer { private: cocos2d::LabelTTF *label; public: // theres no id in cpp, so we recommend returning…

lvs架构

lvs 4种模式 1、nat(网络地址转换模式) 2、dr(直接路由模式) 3、tun(隧道模式) 4、full-nat(双向转换模式) 1,nat(网络地址转换模式架构) 1、nat模式优势是,后端可以是任意支持tcp/ip的操作系统,缺点是响应时回包必须…