1. [root@localhost mosquitto-1.3]# make WITH_TLS=no  

  2. set -e; for d in lib client src; do make -C ${d}; done  

  3. make[1]: Entering directory `/qyl/mosquitto-1.3/lib'  

  4. cc -Wall -ggdb -O2  -I. -I.. -I../lib -fPIC -DWITH_THREADING -DWITH_SRV -c mosquitto.c -o mosquitto.o  

  5. In file included from mosquitto.c:46:  

  6. mosquitto_internal.h:51:20: error: ares.h: No such file or directory  

  7. In file included from mosquitto.c:46:  

  8. mosquitto_internal.h:238: error: expected specifier-qualifier-list before ?.res_channel?  

  9. mosquitto.c: In function ?.osquitto_loop?.  

  10. mosquitto.c:834: error: ?.truct mosquitto?.has no member named ?.chan?  

  11. mosquitto.c:837: warning: implicit declaration of function ?.res_fds?  

  12. mosquitto.c:837: error: ?.truct mosquitto?.has no member named ?.chan?  

  13. mosquitto.c:917: error: ?.truct mosquitto?.has no member named ?.chan?  

  14. mosquitto.c:918: warning: implicit declaration of function ?.res_process?  

  15. mosquitto.c:918: error: ?.truct mosquitto?.has no member named ?.chan?  

  16. make[1]: *** [mosquitto.o] Error 1  

  17. make[1]: Leaving directory `/qyl/mosquitto-1.3/lib'  

  18. make: *** [mosquitto] Error 2  


在lib/mosquitto_internal.h里面找到ares.h,发现这个头文件是由宏定义WITH_SRV控制的。

 

不知道SRV SUPPORT是什么东西,但是查看mosquitto的更新日志,发现SRV support是今年3月16号才添加上的,我说去年源码安装一直没问题,今年怎么就不行了。

解决办法,在config.mk配置文件里面把srv support 关掉。如下图:

 

[plain] view plaincopy

  1. # Build with SRV lookup support.  

  2. WITH_SRV:=no  


再执行make,就可以顺利安装了。

posted on 2014-06-09 08:05  ~小二黑~  阅读(8131)  评论(1编辑  收藏  举报