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/

标签: ubuntu, 编译, ctrl, include, mosquitto, cJSON

相关文章推荐

添加新评论,含*的栏目为必填