首先交代一下,用到的安装包
mosquitto-2.0.11# mqtt主程序安装包。---后面发现不用装了,我就不管了- libwebsockets-4.2.0 # websocket安装包。如果你要用mosquitto-cluster集群的话,就不用装这个了,不支持!!!
cJSON# 我也不知道是啥 mqtt需要用到的安装。---后面发现不用装了,我就不管了- mosquitto-cluster # mqtt 集群安装包 集成的mosquitto是1.5.0版本的QAQ
- mosquitto-auth-plug # mqtt权限安装包,可以用来连接数据库mysql做用户认证
下面都是在CENTOS 7 下运行安装
上来先把依赖装一下(wo xiang zhi dao shem me shi T M D yi lai)
yum -y install gcc gcc-c++ openssl-devel c-ares-devel libuuid-devel wget cmake
# 不止这些,下面还有
先为mosquitto增加websocket支持,安装websocket库文件
cd libwebsockets-4.2.0
mkdir bulid
cd bulid
cmake ..
make && make install
安装mosquitto-cluster集群 (装这个其实和装mosquitto一毛一样)
cd mosquitto-cluster
vi config.mk
# 这里的vi config.mk是为了进配置文件修改 WITH_BRIDGE 和 WITH_CLUSTER;但我发现没啥要改的
## 如果要用websocket,将WITH_WEBSOCKETS:=no 改为yes 这一步狠重要(我的需要,后加的,也有出错,在下面会写)
make && make install
cp lib/libmosquitto.so.1 /usr/local/lib
sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1
ldconfig
这里就报错了,如下
解决方案如下:
yum -y install docbook-style-xsl
yum -y install libxslt
# 配置并修改docbook.xsl
find / -name docbook.xsl
将白色部分替换掉mosquitto-cluster/man/manpage.xsl文件下的内容
就好了。。。。应该是这样。。。。
因为我加了websocket,所以有了新的问题。
这个解决方案是我自己瞎想的,但也能解决问题。就是给出错的函数声明一下:
const S_IFDIR
const S_IFREG
这两也能解决问题。
# 重新编译安装一下
make && make install
就好了,然后mosquitto.conf配置,我就不写了。baidu一下你知道的。(有需要留言,我再写,我感觉baidu一下好多的)
下面安装mosquitto-auth-plug
cd mosquitto-auth-plug
cp config.mk.in config.mk
#修改如下图
评论 (0)