1、下载mosquitto源码

官网 http://mosquitto.org/download/ 下载源码。

直接通过命令下载:

wget http://mosquitto.org/files/source/mosquitto-2.0.9.tar.gz
2、解压进入目录,解压。
  tar -zxf mosquitto-2.0.9.tar.gz
3、解决编译错误
  • 错误1:
In file included from mosquitto.c:17:0:
../config.h:48:35: fatal error: openssl/opensslconf.h: No such file or directory
 #  include <openssl/opensslconf.h>                    

解决办法:

sudo apt-get install libssl-dev

错误2:

make[2]: Leaving directory '/build/apps/db_dump'
make[2]: Entering directory '/build/apps/mosquitto_ctrl'
cc -I../mosquitto_passwd  -I. -I../../ -I../../include -I../../src -I../../lib -DWITH_TLS -Wall -ggdb -O2 -Wconversion -DVERSION=\""2.0.9\"" -c mosquitto_ctrl.c -o mosquitto_ctrl.o
In file included from mosquitto_ctrl.c:29:
mosquitto_ctrl.h:21:10: fatal error: cjson/cJSON.h: No such file or directory
   21 | #include <cjson/cJSON.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.

解决办法:

需要先安装cmake。

cJSON 库安装步骤如下: 参考cJSON的README说明安装

  1. git clone git clone https://github.com/DaveGamble/cJSON.git

  2. cd cJSON/

  3. mkdir build

  4. cd build/

  5. cmake .

  6. sudo make install //因为要安装库到系统目录,最后这一步要有root权限才能执行

4、安装完毕,拷贝库文件和头文件到/usr

进入mosquitto源码目录:

/home/ares/workspace/mosquito-test/mosquitto-2.0.9

拷贝动态库文件:

sudo cp ./lib/libmosquitto.so.1 /usr/lib/

拷贝头文件:

sudo cp include/* /usr/include/
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐