OS环境:CentOS6.5python
一、安装依赖c++
yum -y install gcc gcc-c++ openssl-devel c-ares-devel libuuid-devel wget cmake
二、为mosquitto增长websocket支持,安装文本socket库文件 ,解压缩
web
# tar zxfv libwebsockets-v1.6-stable.tar.gz
三、运行 websocketwebsocket
# cd libwebsockets-v1.6-stable # mkdir bulid # cd bulid # cmake .. # make && make install
四、安装mosquittosocket
下载mqtt--- mosquitto-1.4.8.tar.gz, 解压缩
测试
# tar zxfv mosquitto-1.4.8.tar.gz
五、修改config.mk文件以使后面编译的mosquitto文件支持websocketui
# cd /mosquitto-1.4.8
mosquitto-1.4.8目录下的config.mk文件,把config.mk 文件中的 WITH_WEBSOCKETS:=no 改成yesspa
保存后,执行code
# make && make install # ln -s /usr/local/lib/libwebsockets.so.6 /usr/lib64/libwebsockets.so.6 # groupadd mosquitto # useradd -g mosquitto mosquitto
六、建立mosquitto.conf、pwfile文件blog
# cd /etc/mosquitto/
若是该目录下没有mosquitto.conf 和 pwfile
执行
# cp mosquitto.conf.example mosquitto.conf # cp pwfile.example pwfile
而后修改 文件mosquitto.conf ,
511 allow_anonoymous true . . . 537 password_file /etc/mosquitto/pwfile
并在文件最后加入
port 1883 listener 8080 protocol websockets
七、启动mqtt
# mosquitto -c /etc/mosquitto/mosquitto.conf
八、测试
另外打开两个终端
终端一:
这里其实就是订阅一个主题为”mqtt”的消息。”mqtt”为主题名,假若有客户端发布了主题为”mqtt”的消息,这个终端将会收到消息的内容。
mosquitto_sub -t mqtt
终端二:
这里就是发布一个主题为”mqtt”,内容为”hello mqtt”的消息。
mosquitto_pub -h localhost -t mqtt -m "hello mqtt"
这时终端一会收到:hello mqtt
九、错误解决
在安装过程当中,或测试过程当中可能会遇到错误:
mosquitto_sub: error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory
解决方法:
# cat /etc/ld.so.conf # echo "/usr/local/lib">>/etc/ld.so.conf # ldconfig