将net-snmp功能移植到自己的模块中出现了编译问题:

查了网上的资料,一种是说增加编译选项 -fPIC, 这种方式测试后可用。还有一种可能是静态库的嵌套引用问题,net-snmp提供了四个库,分别是libnetsnmp.a, libnetsnmpsnmpd.a, libnetsnmpagent.a, libnetsnmpmibs.a, 这四个库的引用顺序出错的话也会引起上面那个问题,在程序里,这样写就没有错:
-lnetsnmpsnmpd -lnetsnmpmibs -lnetsnmpagent -lnetsnmp
不过后来又出现了问题:

这个问题通过增加 编译选项 -fPIC解决了。
本文介绍了在将net-snmp功能移植到自定义模块过程中遇到的编译问题及解决方案。通过添加编译选项-fPIC和调整静态库引用顺序,成功解决了链接错误。文章详细记录了解决步骤和验证过程。






