位置: 编程技术 - 正文

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手机编程软件)

  • 增值税发票综合服务平台红字确认
  • 珠宝饰品在什么地方买
  • 耕地占用税减半政策
  • 进项税额转出会影响利润吗
  • 个人所得税纳税义务人
  • 小规模纳税人报税前需要做什么
  • 耕地转让权是什么意思
  • 土地增值税扣除系数
  • 外购货物自用会计处理
  • 期末应交企业所得税怎么算
  • 付款金额比发票金额少怎么办
  • 增值税征收比例和征收方式
  • 增值税发票过期了税金怎么办
  • 设备租赁涉及税种
  • 咨询服务税费多少
  • 公积金贷款利息现在是多少
  • 光纤熔接发票属什么类别
  • 销售已使用的固定资产简易计税
  • 内部调拨账务处理
  • windows 10鼠标如何操作
  • 生产企业销售给其他单位的生产工具
  • 收到空头支票解释怎么写
  • 主营业务利润率多少合适
  • 有形动产租赁税收优惠
  • 抵债资产的账务处理
  • 发票开出未认证丢失怎么处理
  • 如何计算企业年度人均产值
  • anaconda的虚拟环境的作用
  • 动态模型图如何制作
  • thinkphp教程
  • 个税计税周期 一年
  • 对企业采取以旧换新方式销售的应税产品
  • 当月勾选认证可以在下月抵扣吗
  • 怎么理解中国实际
  • java查询mongodb数据
  • 个人缴纳社保部分怎么算
  • SQL 2005 ERROR:3145 解决办法(备份集中的数据库备份与现有的数据库不同)
  • mysql数据库优化配置
  • 废旧物资回收公司名称
  • 固定资产资本化后续支出
  • 消费税计税分录
  • 建筑业挂靠企业所得税如何收取?
  • 所得税费用是什么意思
  • 计划成本法下的会计科目
  • 有外经证还要缴纳企业所得税吗
  • 个人转让不动产交印花税吗
  • 企业为什么要转移用工风险什么意思
  • 员工上班的停车费谁出
  • 现金往来款怎么做账
  • 公司的房租发票怎么记账
  • 酒店客人损坏物品不赔偿怎么报警
  • 现金日记账如何填写
  • 项目过路费应该挂什么科目
  • 汇兑损益形成的基础是
  • 税收罚款支出计算公式
  • 原告起诉被告承担诉讼费
  • 员工的探亲费应由谁支付
  • 行政单位如何做好机构编制工作
  • 出租车票没有发票怎么办
  • 超市会员能便宜多少
  • 会计复式记账法题目
  • 会计记账借贷记什么账户
  • 医疗机构药库设置标准
  • linux系统 虚拟机
  • mac launchctl
  • win7系统如何关闭开机自动启动软件
  • win7自带防火墙关闭后自己打开啥原因
  • win7桌面没有了怎么办
  • win10系统微软账户密码忘了
  • win7系统检测不到u盘
  • unity4.1
  • 零基础搭建直播室与云直播平台
  • Jquery中巧用Ajax的beforeSend方法
  • android shareuid
  • jQuery中Ajax全局事件引用方式及各个事件(全局/局部)执行顺序
  • 国家税务总局司长
  • 北京市大兴区有多少人口
  • 秀屿区国税局服务电话
  • 账本遗失征管法处罚
  • pppoe账号密码改了连不上网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设