为什么移植snmp生成的snmpd文件不能运行
展开全部
准备工作
1、net-snmp5.7.1源码
2、Linux编译环境,IP地址192.168.2.115
3、Powerpc平台,本次移植到飞思卡尔,IP地址192.168.2.20
环境搭建步骤
1、主机-Powerpc:
主机和Powerpc互相ping,检测网口连通性;
如果网口无法工作,使用串口的zmodem进行文件下载,但是此方法较慢;
2、下载文件方法:
windows平台
开启tftpd.exe,配置服务器工作路径为文件所在目录;
通过串口或者网口与Powerpc通信,在Powerpcshell下运行:
tftp -r [download_file] 192.168.2.115 –g
SecureCRT使用zmodem传送文件,此方法比tftp方法速度慢。
Linux系统需要tftp服务器或者nfs服务器支持
移植net-snmp
1、配置
CC=/usr/freescale-2010.09/bin/powerpc-linux-gnu-gcc./configure--build=i386-linux --host=ppc-linux --disable-ipv6--with-endianness=big--disable-manuals--disable-ucd-snmp-compatibility--enable-as-needed--disable-embedded-perl --without-perl-modules--disable-snmptrap-subagent--disable-scripts--with-mib-modules="ucd_snmp" --enable-shared
修改项包括:平台相关交叉编译链,host取值,字节序(Powerpc属大端字节序),其他配置不变
2、编译
本工程因为需要加载动态库,因此须使用动态编译
动态编译:
#make
编译时不需要重新指定安装目录,一律选择默认
//若有动态库,会提示错误:缺少库,拷贝过去即可。编译完成后大小41K左右
静态编译:
#makeLDFLAGS=”-static”
//使用-static选项指明是静态编译,安装完成后大小1.6M左右
3、安装
#make install
编译完snmp后,在安装阶段会链接目标文件生成库文件,并将库文件默认安装在本地/usr/local/lib和 /usr/lib下
4、压缩文件
安装完成后snmpd路径:/usr/local/sbin/snmpd
@Powerpc-linux-stripsnmpd
静态:会将1.6M的文件压缩为649K
动态:只有46K
拷贝文件
1、SNMPD的拷贝
将压缩后的snmpd拷贝至/usr/sbin目录下,修改权限为755;
2、配置文件的拷贝
将编译环境的/etc/snmp目录下snmpd.conf snmp.conf 这两个文件拷贝至:Powerpc板的/usr/local/share/snmp目录下;
3、MIB库文件的拷贝
将MIB库文件拷贝至Powerpc板/usr/local/share/snmp/mibs中:
拷贝SNMP系统MIB库和我们自己开发的MIB库到目标板 的/usr/local/share/snmp/mibs;
cp ./mib <目标板>/usr/local/share/snmp/mibs;
cp SGCC-MIB.my <目标板>/usr/local/share/snmp/mibs;
这样,我们自己开发的MIB库SGCC-MIB和snmp自带的MIB库就整合在一起了。
4、命令的拷贝
通过tftp或者nfs挂载方式,拷贝本地snmp相关命令到Powerpc板:
#这里是snmp相关操作方法
cd/usr/local/bin/
cp agentxtrapnet-snmp-c* snmp* encode_keychange /usr/bin/
# snmp的守护线程和trap监听命令权限更改为755。
cp/usr/local/sbin/snmp*/usr/sbin/
[注]路径不定,只要在需要时将命令所在路径导入PATH即可
使用命令测试:
@snmpget–v2c –cprivate 127.0.0.1 sysUpTime.0 #返回正确
5、运行库的拷贝
通过tftp或者nfs挂载方式,拷贝本地snmp相关库文件到目标板,用以支持项目运行:
Cp usr/lib/libnetsnmp* /usr/lib
Cp usr/local/lib/libnetsnmp* /usr/lib
将需要snmp支持的第三方库——我们的arm网管程序编译而成的库文件,拷贝/usr/local/lib;
这样,我们的网管程序就可得到SNMP的支持
[注]路径不定,只要在需要时将库文件所在路径导入LD_LIBRARY_PATH即可
1、net-snmp5.7.1源码
2、Linux编译环境,IP地址192.168.2.115
3、Powerpc平台,本次移植到飞思卡尔,IP地址192.168.2.20
环境搭建步骤
1、主机-Powerpc:
主机和Powerpc互相ping,检测网口连通性;
如果网口无法工作,使用串口的zmodem进行文件下载,但是此方法较慢;
2、下载文件方法:
windows平台
开启tftpd.exe,配置服务器工作路径为文件所在目录;
通过串口或者网口与Powerpc通信,在Powerpcshell下运行:
tftp -r [download_file] 192.168.2.115 –g
SecureCRT使用zmodem传送文件,此方法比tftp方法速度慢。
Linux系统需要tftp服务器或者nfs服务器支持
移植net-snmp
1、配置
CC=/usr/freescale-2010.09/bin/powerpc-linux-gnu-gcc./configure--build=i386-linux --host=ppc-linux --disable-ipv6--with-endianness=big--disable-manuals--disable-ucd-snmp-compatibility--enable-as-needed--disable-embedded-perl --without-perl-modules--disable-snmptrap-subagent--disable-scripts--with-mib-modules="ucd_snmp" --enable-shared
修改项包括:平台相关交叉编译链,host取值,字节序(Powerpc属大端字节序),其他配置不变
2、编译
本工程因为需要加载动态库,因此须使用动态编译
动态编译:
#make
编译时不需要重新指定安装目录,一律选择默认
//若有动态库,会提示错误:缺少库,拷贝过去即可。编译完成后大小41K左右
静态编译:
#makeLDFLAGS=”-static”
//使用-static选项指明是静态编译,安装完成后大小1.6M左右
3、安装
#make install
编译完snmp后,在安装阶段会链接目标文件生成库文件,并将库文件默认安装在本地/usr/local/lib和 /usr/lib下
4、压缩文件
安装完成后snmpd路径:/usr/local/sbin/snmpd
@Powerpc-linux-stripsnmpd
静态:会将1.6M的文件压缩为649K
动态:只有46K
拷贝文件
1、SNMPD的拷贝
将压缩后的snmpd拷贝至/usr/sbin目录下,修改权限为755;
2、配置文件的拷贝
将编译环境的/etc/snmp目录下snmpd.conf snmp.conf 这两个文件拷贝至:Powerpc板的/usr/local/share/snmp目录下;
3、MIB库文件的拷贝
将MIB库文件拷贝至Powerpc板/usr/local/share/snmp/mibs中:
拷贝SNMP系统MIB库和我们自己开发的MIB库到目标板 的/usr/local/share/snmp/mibs;
cp ./mib <目标板>/usr/local/share/snmp/mibs;
cp SGCC-MIB.my <目标板>/usr/local/share/snmp/mibs;
这样,我们自己开发的MIB库SGCC-MIB和snmp自带的MIB库就整合在一起了。
4、命令的拷贝
通过tftp或者nfs挂载方式,拷贝本地snmp相关命令到Powerpc板:
#这里是snmp相关操作方法
cd/usr/local/bin/
cp agentxtrapnet-snmp-c* snmp* encode_keychange /usr/bin/
# snmp的守护线程和trap监听命令权限更改为755。
cp/usr/local/sbin/snmp*/usr/sbin/
[注]路径不定,只要在需要时将命令所在路径导入PATH即可
使用命令测试:
@snmpget–v2c –cprivate 127.0.0.1 sysUpTime.0 #返回正确
5、运行库的拷贝
通过tftp或者nfs挂载方式,拷贝本地snmp相关库文件到目标板,用以支持项目运行:
Cp usr/lib/libnetsnmp* /usr/lib
Cp usr/local/lib/libnetsnmp* /usr/lib
将需要snmp支持的第三方库——我们的arm网管程序编译而成的库文件,拷贝/usr/local/lib;
这样,我们的网管程序就可得到SNMP的支持
[注]路径不定,只要在需要时将库文件所在路径导入LD_LIBRARY_PATH即可
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询