paho.mqtt.cpp库编译
本人C++新手,cmake刚接触,最近想用到MQTT,下载的库老是编译不过,在网上找了很多教程说的都不太清楚,所以写下这篇记录一下编译过程,主要参考github说明文档。
环境:win10 64位 ,MinGW 64 ,Visual Studio 2019, CMake v3.17(官方要求v3.5)
因为MQTT-C++库依赖MQTT-C库,所以先下载C库。
1、构建 Paho C 库
git clone https://github.com/eclipse/paho.mqtt.c.git
cd paho.mqtt.c
git checkout v1.3.8
cmake -Bbuild -H. -DPAHO_ENABLE_TESTING=OFF -DPAHO_BUILD_STATIC=ON -DPAHO_WITH_SSL=OFF -DPAHO_HIGH_PERFORMANCE=ON -DCMAKE_INSTALL_PREFIX=./build/_install
cmake --build build/ --config Release --target install
注:默认用的Visual Studio编译器,可以使用-G指定编译器。
-DPAHO_WITH_SSL=ON这是在启用 SSL/TLS 的情况下构建的。如果不需要,请省略(我关闭了)。
-DCMAKE_INSTALL_PREFIX=./build/_install 这个参数指定编译程序安装的位置我选择在当前文件下./build/_install。
cmake --build build/ --config Release --target install 这句--config Release不能省略
2、 构建 Paho C++ 库
git clone https://github.com/eclipse/paho.mqtt.cpp
cd paho.mqtt.cpp
cmake -Bbuild -H. -DPAHO_BUILD_DOCUMENTATION=ON -DPAHO_BUILD_SAMPLES=ON -DPAHO_BUILD_STATIC=ON -DCMAKE_INSTALL_PREFIX=./build/_install -DCMAKE_PREFIX_PATH=E:\cpp\paho.mqtt.c\build\_install
cmake --build build/ --config Release --target install
和C库差不多,-DCMAKE_INSTALL_PREFIX=./build/_install指程序将要被安装到的位置。
-DCMAKE_PREFIX_PATH=E:\cpp\paho.mqtt.c\build\_install因为c++库依赖c库,所以这个变量指定c库的安装位置。
注:可以在配置时使用 CMake 生成器开关-G选择 64 位目标。
cmake -G "Visual Studio 14 Win64" -Bbuild -H. -DCMAKE_INSTALL_PREFIX=C:\mqtt\paho-c
编译器Visual Studio版本根据自己系统环境填写,这里只是举例。
如果是linux系统,可以用-DCMAKE_BUILD_TYPE=Release指定构建类型。
如果要构建文档(PAHO_BUILD_DOCUMENTATION) 会要求安装doxygen,百度自行下载安装。
paho.mqtt.cpp库编译相关推荐
- 【Mqtt】基于paho.mqtt.c库的mqtt客户端实现
目录 1.paho.mqtt.c 2.构建 3.mqtt客户端实现 1.paho.mqtt.c https://github.com/eclipse/paho.mqtt.c
- cmake:VS2015和GCC编译paho.mqtt C/C++ client
paho.mqtt.c是eclipse开发的C语言跨平台mqtt client 开源库,paho.mqtt.cpp是对应的C++ Client,paho.mqtt支持CMAKE编译,本文以脚本形式提供 ...
- linux 编译mqtt静态库_编译MQTT C++ Client
nmake -f ms\nt.mak(这是静态库,动态库是ntdll.mak) nmake -f ms\nt.mak test(测试命令,如果成功则最后显示"passed all t ...
- MQTT客户端库-Paho GO
为了加深理解,本文是翻译文章.原文地址 Paho GO Client 语言 GO 协议 EPL AND EDL 官网地址 http://www.eclipse.org/paho/ API类型 As ...
- MQTT客户端paho.mqtt.XXX
1. MQTT客户端C代码库 C语言库:https://github.com/eclipse/paho.mqtt.c 1.1 C源码下载构建 # centos7 OS 方法一 $ git clone ...
- STM32+ESP8266(ESP-12F)物联网温度计-移植paho MQTT协议连接阿里云
STM32+ESP8266(ESP-12F)物联网温度计-移植paho MQTT协议连接阿里云 目录 STM32+ESP8266(ESP-12F)物联网温度计-移植paho MQTT协议连接阿里云 一 ...
- paho.mqtt.c使用openssl加密通讯
证书的生成和配置请参考https://blog.csdn.net/sy84436446/article/details/128576433 下载和编译 # 下载paho.mqtt.c代码 git cl ...
- cmake:解决MSVC下/MT 编译paho.mqtt.c的问题
paho.mqtt.c是eclipse开发的C语言跨平台mqtt client 开源库,之前写过一篇博客<cmake:VS2015和GCC编译paho.mqtt C/C++ client> ...
- mqtt 库编译及示例
1,源码地址 git clone https://github.com/eclipse/paho.mqtt.c.git,下载即可. 2,编译库 下载源码后,cd paho.mqtt.c目录下,直接ma ...
最新文章
- 靠脑机接口“隔空探物”,大脑植入芯片可实现“心灵感应”
- linux nexus状态,linux 启动 nexus
- 最快捷的阅读实训新闻
- Redis数据库(三)——(主从复制、哨兵模式、集群)
- .NET 中密封类的性能优势
- 命令行cd到_前端(只)需要掌握这些命令行(就还行了)
- 漫步数理统计二——集合论
- 是时候了解React Native了
- vue 和react
- 使用 guard 的正确姿势
- Android qemu pipe高速管道(九)
- qt可以导入3d吗_3D全息投影技术可以用在教育行业吗?
- java/php/net/python房产信息管理系统设计
- ehcache使用java_Java分布式缓存框架Ehcache 使用(一)
- python把英语句子成分字母_python把英语句子成分字母
- 中科院NIPS 2017论文提出深度离散哈希算法,可用于图像检索:Deep Supervised Discrete Hashing
- MSP430F157IPMR 超低功耗 MCU 封装:LQFP64
- 【微信转账—设置付款时间问题】
- 课时31:永久储存:腌制一缸美味的泡菜
- java怎么语音转换成文字_Annyang将语音转换为文本
热门文章
- 什么是系统漏洞,该如何处理?
- CentOS6.10搜狐浏览器无法切换中文输入法问题之解决
- springboot遇到的Invalid bound statement (not found): com.yc.service.UserService的众多坑
- mysql 周_MySQL的跨年周统计问题
- Preface---ITE EC
- RabbitMQ的架构模型
- 一天一道ctf 第25天(md5强碰撞)
- 仿蚂蚁金服AntV框架蚂蚁数据可视化F2条形图、柱状图(注释详尽)
- 神经网络计算机的用途是,神经网络计算机的应用
- 网易严选 DMP 标签系统建设实践