SNMP 模块化设计解析
1. 目标产物
从 Makefile 中可以看出最终会生成三类东西:
-
静态库或动态库
ARCHIVE := libsrossnmpcore.s.a
→ 由
SRCS
编译出来,打包成.a
提供内部链接。 -
动态库
LIBCFG = libsrossnmp.so
→ 由
LIBSRCS
单独编译,生成.so
放到$(ROOTFS)/usr/lib
。 -
可执行文件 (exec)
Makefile 里留了空壳exec:
,代表这个模块当前只编译库,不直接生成可执行文件。
2. 源码分类
(1) SRCS
SRCS = $(EMBED_SRC) $(COMMON_SRC) $(LIBT_SRC) $(IDB_SRC) \$(SNMPRELAY_SRC) $(ENVOY_SRC) $(ROOT_SRC)
-
<