一般情况下,我们下载openwrt源码之后,我们都会基于openwrt的环境,定制化开发一些功能,openwrt里面不一定包含我们所有需要的库,可能我们需要的用到的库要自己加上去,这就涉及到如何我把我需要的模块添加到openwrt中编译。
网上也有许多关于openwrt下makefile编写的文章,但是恰好工作需要,我也从不懂到熟悉,现在把学习的过程及结果分享给大家,希望给有需要帮助的朋友,有表达不当的地方,也请前辈帮忙指出。下面是增加libglog的过程。
1.我们首先新建我们库的目录
openwrt/package/libs/libglog
2.在libglog中新建文件Makefile,然后我们需要完成Makefile的功能,先把内容贴出来,我再来解释每一步流程:
Makefile总共由两大部分构成,且这两大部分,由两个include分开,现在详细的分析每个部分。
2.1 include $(TOPDIR)/rules.mk
就是将rules.mk中的内容包含进来,rules.mk主要是一些变量的定义:一些路径的定义,路径的自动扩展,编译 的选项添加,编译中需要使用的一些命令的路径等。这个是Makefile的重要的操作,必须包含。
2.2 模块1,这部分是关于新增库的描述信息。
我们可以从官方获取这些PKG_变量的含义: