位置: 编程技术 - 正文

vs2010 编译mosquitto win32版本,开启websockets,实现消息推送(vs2010编译器在哪里?)

编辑:rootadmin

推荐整理分享vs2010 编译mosquitto win32版本,开启websockets,实现消息推送(vs2010编译器在哪里?),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vs2010编译在哪,vs2010编译器在哪里?,vs2010编译器在哪里?,vs2019编译按钮在哪,vs2010如何编译,VS2010 编译 qt5.8,VS2010 编译 qt5.8,VS2010 编译 qt5.8,内容如对您有帮助,希望把文章链接给更多的朋友!

前言:因为之前没有怎么碰vs,只搞过cygwin,而cygwin上搞了好久都搞不定,以至于重新整理思路,这window上的版本应该怎么去编译。一直不知道怎么搞,只能边看其他教程,边自己搞着,连续几天下了班就可以研究编译,特别是在开启websockets的时候,加上libwebsockets库,对于小白来说,特别痛苦。也罢,最后也成功编译。

编译的电脑:MacBook Pro 虚拟机win7,bit,1.5G的内存 参考: 下载vs

我下了个旗舰版的,不过只有天试用期,无妨,编译就够了。 ps:之前用过vs去编译,然后各种莫名其妙,如果有同学知道为什么的,请留言。

2. 下需要的库。

c-ares 我下的是当时最新的1..0,c-ares-1..0.tar.gz pthreads 2.9.1,pthreads-w-2-9-1-release.zip openssl 我下的是当时最新的1.0.2a,WinOpenSSL-1_0_2a.exe cmake 我下的是当时最新的3.2.2,cmake-3.2.2-win-x.exe libwebsocket 1.4,libwebsockets-1.4-chrome-firefox-.tar.gz mosquitto 我下的是当时最新的1.4.2,mosquitto-1.4.2.tar.gz

3. 安装库。

安装文件,源码文件都放在C:application 1)先安装vs,我是完全安装,为了减少其他因素的影响。 2)解压c-ares,路径为C:applicationc-ares-1..0 3)解压pthreads,然后把Pre-built.2里include的文件复制到C:Program Files (x)Microsoft Visual Studio .0VCinclude Pre-built.2里lib的文件复制到C:Program Files (x)Microsoft Visual Studio .0VClib 4)安装openssl,路径为C:OpenSSL-Win 5)安装cmake,在开始菜单生成了cmake-gui.exe程序。 6)解压libwebsocket,这是源码来的,需要vs编译一下。 打开cmake-gui,如下

在第三步的时候,弹出个对话框,选择Visual Studio 即可,不要选择bit,切记。 等一会儿,如下

在C:build-websocket就生成了vs的工程,找到libwebsockets.sln,双击打开。

生成了比较重要的东西,后面要用到: C:build-websocketbinMinSizeRel libeay.dll ssleay.dll websockets.dll C:build-websocketlibMinSizeRel websockets.lib ZLIB.lib

7)解压mosquitto,路径为C:applicationmosquitto-1.4.2

4. 准备编译mosquitto1.4.2

打开cmake-gui,依次点1,2,3步,最后出现c-ares找不到

然后配置相关选项,如下

在这里C:build,用vs打开mosquitto.sln,在“输出”窗口发现好多错误

原来是这些文件里面日期字符串的星期几导致的。于是把上面提到的文件里的乱码删掉,即把“周几”删掉,如:

mosquittopp.vcxproj文件中 报错,名称不能以“>”字符(十六进制值 0x3E)开头。后面还有几处类似改法。

重新打开mosquitto.sln,项目右键开始生成。

报一推错误,大意是libwebsockcets的函数找不到。

vs2010 编译mosquitto  win32版本,开启websockets,实现消息推送(vs2010编译器在哪里?)

在解决方案资源管理器中找到mosquitto,右键,属性。

在打开的mosquitto属性页里,依次打开配置属性,链接器,输入,附加依赖性。

点击右边的小三角,出来附加依赖项页面。把最后的websockets.lib改成正确的lib文件路径。

再项目右键重新编译一下。

如果遇到无法打开mosquitto.lib,表明某个子工程需要依赖libmosquitto这个工程,在子工程右键“项目依赖项”里面勾上libmosquitto就可以了。

如果遇到一堆红色的错误,无法解析外部符号,就表明某些库没有引用,就要在附加依赖性添加对应的lib。或者复制到 C:Program Files (x)Microsoft Visual Studio .0VClib

如果遇到缺少某个.h头文件的,需要把对应的头文件复制到C:Program Files (x)Microsoft Visual Studio .0VCinclude

此时主程序在: C:buildsrcMinSizeRelmosquitto.exe C:buildsrcMinSizeRelmosquitto_passwd.exe

C:buildclientMinSizeRelmosquitto_pub.exe C:buildclientMinSizeRelmosquitto_sub.exe

当然,这里选择Release也是可以的。

如果想把生成的东西放在一起,就要填输出路径了。子工程右键属性,配置属性,常规,输出目录,改维c:buildoutput,其他子工程也一样修改。

改好后,重新生成。

此时,还是打不开主程序的,提示缺少websockets.lib, 于是复制C:build-websocketlibMinSizeRelwebsockets.lib -> c:buildoutput 再把需要的w文件搬过来,如下 C:applicationmosquitto-1.4.2mosquitto.conf -> c:buildoutput C:build-websocketbinMinSizeRellibeay.dll -> c:buildoutput C:build-websocketbinMinSizeRelssleay.dll -> c:buildoutput C:pthreadsPre-built.2dllxpthreadVC2.dll -> c:buildoutput 现在的目录如下:打开看看,可以运行。

先把mosquitto.conf里的Extra listeners开启一下:listener ,protocol websockets 测试一下mqtt和websockets方式,同时开启的方式:

如出现错误0xd, 装vcredist_x.exe即可解决。

ps:在完成编译之前遇到好多问题,vs报好多错误,解决不了,特别是最后编译通过打开exe就报应用程序不能正常启动 (0xcb)。特别吐血,在绝望之际,查到位编译使用位库,或者位编译使用位库就回出现这种情况,于是我把原来cmake生成vs工程的配置由vs x,改成vs x,即后来vs主界面中间显示WIN,而不是x,坑了好久,反正以后记住了,无论系统是不是位的,一律使用位库和位编译。

到此,编译完成,我会把编译过程上传到csdn,敬请关注。

补充资源链接:点我跳转

Android 编程下 Touch 事件的分发和消费机制 本文转自:

Android酷炫实用的开源框架(UI框架) Android酷炫实用的开源框架(UI框架)前言忙碌的工作终于可以停息一段时间了,最近突然有一个想法,就是自己写一个app,所以找了一些合适开源控件

Android快速开发--使用ORMLite操作数据库 OrmLite是一个数据库操作辅助的开源框架,主要面向Java语言。在Android面向数据库开发中,是一个比较流行的开源框架,方便操作而且功能强大,今天来

标签: vs2010编译器在哪里?

本文链接地址:https://www.jiuchutong.com/biancheng/382254.html 转载请保留说明!

上一篇:[置顶] android利用线程池高效实现异步任务([置顶]星陨计划)

下一篇:Android 编程下 Touch 事件的分发和消费机制(androidstudio手机编程软件)

  • 应交税费是什么科目
  • 固定资产的确认条件包括
  • 记账更改的方法
  • 公司的现金收入可以直接发工资吗
  • 报废车残值款计入什么科目
  • 5个点的税点
  • 个人所得税申报错误如何更正申报
  • 股东购买固定资产能算实收资本么
  • 支付结算有哪些工具
  • 受托加工费直接计入生产成本
  • 借长期借款贷在建工程
  • 以前年度长期股权投资漏记调整
  • 股票投资及收益计算公式
  • 股权转让收入属于什么
  • 购置股权账务处理流程
  • 汽车维修行业工时标准
  • 董事监事的报酬包括哪些
  • 如何冲销账面上的资金
  • 房地产增值税如何抵扣
  • 转贴现属于什么市场
  • 企业所得税以前年度所得调整
  • 无法偿还的借款怎么处理
  • 外账的银行存款怎么处理
  • 华为手机屏幕变成黑白色怎么恢复
  • 为什么我的windows10
  • windows预览体验计划选哪个渠道
  • 预缴的税款科目怎么做
  • iphone7plus怎么设置5g网络
  • 一次性补偿金在取得后间隔一个月申报可以吗
  • php cgi配置
  • 代扣代缴个税手续费
  • 网页读出来
  • vue做移动端适配最佳解决方案,亲测有效
  • 购货款先到支付后付款
  • DWHeartbeatMonitor.exe进程是什么意思 DWHeartbeatMonitor是安全的进程吗
  • php操作mysql的特点
  • 哈阿公路
  • 私企股权转让程序
  • 不发放工资怎么办
  • servlet工作原理和生命周期
  • php新手入门教程
  • upf命令
  • 缴纳残保金的计税依据是什么
  • 帝国cms导航站模板
  • wndgui降级
  • mongodb导入数据三种方式
  • 银行回单应如何打印
  • 股权转让会计分录摘要怎么写
  • 员工工资扣工作服押金怎么做账呢
  • 免税饲料做为免税吗
  • 收取物业费如何纳税
  • 福利费列支范围及标准
  • 母子公司可以合并吗
  • 利润所得税费用
  • 开票未收到款会计分录
  • 房地产企业收到政府补助
  • 企业研制新产品
  • 业务招待费管理草案探讨
  • mysql 5.7.33安装
  • centos7 nis
  • win10预览版最新
  • linux vmtool
  • 介绍两个很常用的成语
  • 如何隐藏应用软件
  • mac怎么共享网络给iphone
  • win10系统admin和oobe
  • win7系统连不了网络
  • java gravity
  • node.js创建服务
  • Linux 下mysql通过存储过程实现批量生成记录
  • 创建javascript对象
  • js设置标签内容
  • android GridView实现图库预览图,多选模式下右上角打勾
  • json jquery
  • 一款简单的网络版多媒体课件制作软件是什么
  • Python Sqlite3以字典形式返回查询结果的实现方法
  • 下载重庆税务官方app
  • 北京市地方税务局2015第10号文件
  • 对方申请了红字信息表我这边怎么操作
  • 税收助力双创
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设