解决编译mosquitto时遇到的问题

TiaNa_na

关注

阅读 109

2022-02-18

遇到了四个问题:

  1. 找不到cJSON.h
  2. 找不到-lcjson
  3. make: xsltproc: Command not found
  4. I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
  • 问题1:找不到cJSON.h
    需要下载cjson的源码,可以去github下载:
    https://github.com/DaveGamble/cJSON
    然后用git clone下载即可。

但是还要在config.mk中在CFLAGS中增加刚才下载的cjson的路径,这样gcc才能找到。这个后面再说。

  • 问题2:找不到-lcjson
    如果没有libcjson.a或者libcjson.so,那么先编译一个,编译命令:

如果要编译so文件,将ar命令替换为:

然后要在config.mk中的CFLAGS和LDFLAGS中增加-I和-L,指定cJSON.h和libcjson.a的路径。具体的路径要视cjson的下载路径而定,例如我的是:

同时,顺便在config.mk中增加DESTDIR的路径,如果不指定DESTDIR的路径,默认安装到/usr/local下面,如果不想安装到这里,就在config.mk中为DESTDIR指定一个路径:

  • 问题3:找不到xsltproc
  • 问题4:下载不了docbook.xsl
    问题三和问题四,执行如下命令即可:

参考的原文链接https://blog.csdn.net/weixin_30325793/article/details/99148948

精彩评论(0)

0 0 举报