EMQTT本地源码搭建填坑记录
因业务需求需要本地搭建一个emqtt的消息队列服务器,根据官网提示搭建失败,具体如下
官方步骤:
Erlang 安装: http://www.erlang.org/
MSYS2 安装: http://www.msys2.org/
MSYS2 安装完成后,根据 MSYS2 中的 pacman 包管理工具安装 Git、 Make 工具软件:
pacman -S git make
编译环境准备之后,clone 代码开始编译:
git clone -b windows https://github.com/emqtt/emqttd-relx.git cd emqttd-relx && make cd _rel/emqttd && ./bin/emqttd console
编译成功后,可执行程序包在目录:
_rel/emqttd
控制台启动编译的 EMQ 程序包:
cd _rel/emqttd && ./bin/emqttd console 坑如下
1.官方已经不使用https://github.com/emqtt/emqttd-relx.git 这个地址了,实际上应该是https://github.com/emqx/emqx-rel.git 理论上clone的时候回自动重定向,但拉下来的项目有时候是不一样的
2.make是一个大坑,erlang的make是一个自动编译的过程,clone下来的项目在make过程中因为配置的git地址等问题,导致编译会不断失败
2.1 rebar编译模块编译失败,需要自行下载rebar 并进行编译
2.2 部分deps依赖存在二次依赖的情况,如lager,emqx目录使用了该依赖,在其他的依赖中也使用了该依赖
2.3 部分deps依赖存在文件无法编译的情况,或存在使用msys2无法编译的,使用windows的rebar编译后可进行后续编译,如/deps/culltefish/src/lager_stderr_backend.erl文件 补充:其实最后这个东西我真的没有搭起来,依赖之类的东西坑太多了,要么就拉不到,要么就编译不上,来来回回折腾了三天(工昨时间),资料也几乎接近于没有,根据手册那几句来根本就干不了。。。劝各位同胞这个坑以后能远点就远点吧
EMQTT本地源码搭建填坑记录的更多相关文章
- Unix 网络编程卷一源码编译踩坑记录 ubtutu 19.10
在阅读unpv1时运行源代码的环境配置,这里简单记录一下 源代码里的README 写得挺详细的,但是在Linux 系统的下还没没办法直接编译通过的, 这里我使用的是ubuntu 19.10(在腾讯云1 ...
- kibana 5.5 源码编译踩坑记录
由于项目需要定制开发kibana,因此需要编译kibana,在开发环境下运行. 注意:必须下载kibana 5.5的源码才能正常编译,下载release或者snapshot版本是不行的,运行npm ...
- webapp填坑记录[更新中]
网上也有许多的 webapp 填坑记录了,这几个月,我在公司正好也做了2个,碰到了一些问题,所以我在这里记录一下我所碰到的问题: meta 头部声明在开发的时候,刚刚创建 HTML 文件,再使用浏览器 ...
- webapp填坑记录
网上也有许多的 webapp 填坑记录了,这几个月,我在公司正好也做了2个,碰到了一些问题,所以我在这里记录一下我所碰到的问题: meta 头部声明在开发的时候,刚刚创建 HTML 文件,再使用浏览器 ...
- Kafka踩坑填坑记录
Kafka踩坑填坑记录 一.kafka通过Java客户端,消费者无法接收消息,生产者发送失败消息 二. 一.kafka通过Java客户端,消费者无法接收消息,生产者发送失败消息 在虚拟机上,搭建了3台 ...
- ARL(资产侦察灯塔系统)-源码搭建
freebuf能力中心开源了一套资产扫描系统(https://github.com/TophantTechnology/ARL),提供docker版,但并无源码搭建的文档(无完整文档).于是在星光哥及 ...
- ubuntu下的apt-get内网本地源的搭建
APT本地源的搭建(可用于局域网apt-get源搭建或者本地源) 本文档介绍使用apt-mirror软件搭建apt本地源 需求:内网开发环境由于其特定原因不能上外网,所以需要本地环境下的内网源来方便开 ...
- 源码搭建LNMP
源码安装LNMP 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 欢迎加入:高级运维工程师之路 598432640 前言:非常简单的一个平台LNMP,在生产实际环 ...
- 利用shell脚本去备份幸运28源码搭建下载所指定的数据库
#! /bin/bash幸运28源码搭建下载Q[115288oo99]logintool=/home/yx/server/mysql/mysql/bin/mysqldumptool=/home/yx/ ...
随机推荐
- rsync命令简单用法介绍
rsync有两种常用的认证方式,一种为rsync-daemon方式,另外一种则是ssh.在一些场合,使用rsync-daemon方式会比较缺乏灵活性,ssh方式则成为首选.但是今天实际操作的时候发现当 ...
- 目标文件obj的各段 2
#程序的自我修养 page68
- 2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析 实验过程 一.系统运行监控 (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一 ...
- 【转】Docker简介与入门
转自:https://segmentfault.com/a/1190000000448808 Docker是个新生的事物,概念类似虚拟化.网上关于Docker入门的东西已经很多了.不过本文探讨了Doc ...
- MS+Oracle各种兼容性的坑
自17年开始新产品开始全面支持Oracle 12c,但陆续发现各种环境问题兼容性的坑,在此汇总一下: 使用11.2.0.1的客户端版本,在连接12c时,发现system账号登陆报用户名密码错误,普通的 ...
- aspnetcore 日志 serilog-aspnetcore
serilog-aspnetcore https://github.com/serilog/serilog-aspnetcore public static void Main(string[] ar ...
- Notepad2用法说明
Notepad2用法说明:1.替换系统记事本.bat和恢复系统记事本.bat可以替换.回复系统记事本.2.查看→默认字体,编程可用Consolas,字号四号.3.查看→自定义方案,Identifier ...
- 记一次gitlab-ce数据恢复过程
使用的gitlab是用docker启动的,数据目录的owner/group信息被意外全部更改成了root:root导致服务不可用.最终通过复原文件所有者的方式恢复了服务. 步骤如下: 1. 打包备份g ...
- DB2锁与隔离级别
数据库管理器支持三种一般类别的锁定: 共享(S) 挂起 S 锁定之后,并发应用程序进程只能对数据执行只读操作. 更新(U) 挂起 U 锁定之后,如果并发应用程序进程未声明它们要更新行,那么它们只能对数 ...
- Python抓取百度汉字笔画的gif
偶然发现百度汉语里面,有一笔一划的汉字顺序: 觉得这个动态的图片,等以后娃长大了,可以用这个教写字.然后就去找找常用汉字,现代汉语常用字表 .拿到这里面的汉字,做两个数组出来,一共是 ...