分享

linux下编译mosquitto出现的问题---“ares.h: No such file or directory”

 风雪夜归人_95 2014-12-02
         刚开始在自己的机器上编译时,并没有出现过这个问题,后来换了一台机器后,再编译就报错了:ares.h: No such file or directory。
 
        源码是一样的,在两台机器上却又不同的表现,证明这个和机器本身的环境有关。在百度上找这个问题的解法,网上基本上都是同一种说法,即屏蔽config.mk文件中的WITH_SRV宏。这样做实际上是将包含有ares库相关操作的部分在编译时去掉了。很明显,这不是一个积极的办法。而且笔者通过实验发现,就算屏蔽掉了WITH_SRV宏,后面也会产生一些有关ares库中的API未定义的错误。因而,要采取正面解决这个问题。
        其实这个问题也没有想象中那么难,就是在本地机器上安装ares库即可。网上有人推荐安装c-ares库,这个应该是没有问题的。笔者用“dpkg --list | grep ares” 命令查询了本地机器上安装的相关库,其结果如下图:
         故只需在新的机器安装这两个库即可。(注意,这两个库都必须安装
         在linux下,先后输入sudo apt-get install libc-ares-dev   和sudo apt-get install libc-ares2即可,安装示意图如下:
 
 
再次编译,则可以通过。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多