Chinaunix首页 | 论坛 | 博客
  • 博客访问: 123358
  • 博文数量: 44
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 55
  • 用 户 组: 普通用户
  • 注册时间: 2015-04-16 10:13
个人简介

努力成为大神~

文章存档

2018年(4)

2016年(40)

我的朋友

分类: 嵌入式

2018-01-22 22:28:36

在网上下载net-snmp5.7.3版本的源码,将其解压到Linux系统之中。

gcc编译net-snmp

入解压的
net-snmp源码根目录下,输入以下命令:
./configure --prefix=/usr/local/net-snmp

该命令进行了安装目录的指定以及源代码的配置,之后输入make进行编译,在make编译的时候遇到了一个错误,提示找不到perl这个库:

/usr/bin/ld: cannot find -lperl

collect2: error: ld returned 1 exit status

make[1]: *** [libnetsnmpagent.la] 错误 1

原因是没有安装perl开发环境。
apt-get install libperl-dev

编译完成后执行make install进行安装。安装完成后的代码目录位于/usr/local/net-snmp目录下。在安装过程中注意,因为现在大部分设备使用的为snmpv1/v2协议,所以为了同设备兼容,我们在安装过程中,当snmp提示选择协议的default版本时,其默认的为3,这里我们需要输入2,之后回车即可使默认的snmp协议版本为v2。这样安装完成。

arm-linux-gcc编译net-snmp库

进入NET-SNMP5.7.3代码目录,将原先编译用来在PCLinux上进行安装的文件清空,通过make clean命令实现,之后重新配置,具体的命令如下:

./configure

--build=i686-linux        编译平台

--host=arm-linux         编译生成的代码的运行平台

--with-cc=arm-linux-gcc   交叉编译工具

--with-ar=arm-linux-ar    arm-linux-ar二进制工具用来管理文件

--with-endianness=little   小端模式

 --enable-mini-agent     最小的snmp(编译出来的snmp比较小)

--prefix=/home/yjj/net-snmp-arm  指定安装路径

--disable-shared      关闭共享,不添加该选项,在编译时会提示cannot find lperl,具体原因不明

之后配置完成后进行make编译,编译通过后make install进行安装。将编译生成的文件按照安装的路径拷贝到arm的文件系统中,没有对应的路径则自己创建。这里如果路径不同,可能存在net-snmp库移植到开发板上后无效的情况。


完成后就可以开始snmp开发之路了~~



阅读(2486) | 评论(0) | 转发(0) |
0

上一篇:QT下如何添加net-snmp库进行开发

下一篇:没有了

给主人留下些什么吧!~~