成功移植NET-SNMP到ARM平台

发布者:游走人间最新更新时间:2016-08-13 来源: eefocus关键字:成功移植  NET-SNMP  ARM平台 手机看文章 扫描二维码
随时随地手机看文章
经过一个月的不懈努力终于将NET-SNMP成功移植到了ARM平台,网上关于NET-SNMP的资料很少,仅有的一些文章也都是轻描淡写,很容易被误导,我就是其中的受害者之一,交叉编译过程很复杂,要配置参数,路径,还有库。所以稍有插翅就会前功尽弃。而且每编译一次NET-SNMP都会耗费很多的时间。很容易挫败人的自信心。我整整啃了一个月的英文文档,边看边试。下面把详细过程贴出来,跟大家共享,希望那些也想移植NET-SNMP能够少走弯路。 

主机环境

Windows + vmware(redhat9.0)

IP分配如下:

      ARM开发板:192.168.4.151

      Windows:       192.168.4.44

      Redhat9.0:     192.168.4.150

搭建交叉编译环境

  把交叉编译器解压到/opt/目录下,然后在/etc/profile文件中添加

环境变量,pathmunge /opt/hardhat/devkit/arm/xscale_be/bin.

交叉编译步骤

①. tar –zxvf  net-snmp-5.3.2.tar.gz

②. cd net-snmp-5.3.2

③../configure --host=armv5teb-hardhat-linux           //运行平台

                            --build=i686-linux                           //编译平台

                          --with-cc=xscale_be-gcc                   //交叉编译器

                          --with-ar=xscale_be-ar                      //

                          --prefix=/usr/local/net-snmp              //安装目录

                            --disable-shared                              //静态编译

                            --with-endianness=little                   //指定小端

                            --enable-mini-agent                         //最小的SNMPD

                            --with-openssl=/opt/hardhat             //openssl库路径

                            /devkit/arm/xscale_be/target/usr

④. make (make LDFLAGS="-static",如果没有指定disable-shared)

⑤. make install

⑥. cp EXAMPLE.conf  /usr/local/net-snmp/share/snmp/snmpd.conf

⑦. 配置/usr/local/net-snmp/share/snmp/snmpd.conf文件

⑧.xscale_be-strip /usr/local/net-snmp/sbin/snmpd,压缩snmpd.

移植文件

在移植以前首先要删除AP上的/usr/sbin/snmpd和/etc/snmpd.conf.

1./usr/local/net-snmp/sbin/目录下snmpd进程

2./usr/local/net-snmp/share/snmp/目录下snmpd.conf ,mibs

3./usr/local/net-snmp/bin目录下net-snmp-config, snmpwalk, snmpget等

备注:snmpd,net-snmp-config,snmkwalk,snmpget等工具在移植以前,要先用xscale_be-strip压缩一下。然后snmpd放到AP的/usr/sbin中,

Snmpd.conf放到Ap 的/etc中。其他按照上面目录存放。AP上没有就自动创建。

在AP上运行snmpd

#snmpd –c /etc/snmpd.conf

备注:

1.在AP上运行时会出现缺少libcrypto.so.0.9.6文件。在交叉编译器中(/opt/hardhat/devkit/arm/xscale_be/target/usr/lib)能找到这个文件,然后put到AP的/lib/目录下。或者

 创建软连接ln –s /mnt/ramd/libcrypto.so.0.9.6 /lib/libcrypto.so.0.9.6。

2.原来snmpd.conf在/usr/local/net-snmp/share/snmp/snmpd.conf中,传到AP时放到/etc/目录中,所以在运行时用参数C来指定最新目录。

3.当snmpd进程运行时会在/var/net-snmp目录下创建一个snmpd.conf.

 原来没有,Snmpd.conf文件中有engineboot和engineID。当用net-snmp-config创建v3用户时,下面会自动添加

createuser zhuangqian MD5 “19840318” DES,当然同时也会在/usr/local/net-snmp/share/snmp/snmpd/conf中添加rwuser zhuangqian.

 

如何创建V3用户

方法一

①首先关闭snmpd进程

②net-snmp-config --create-snmpv3-user –a “19840318” zhuangqian

执行上面操作之后,/var/net-snmp/snmpd.conf文件中增加一行

  createuser zhuangqian  MD5 “19840318”  DES

/usr/local/net-snmp/share/snmp/snmpd.conf中增加一行

rwuser zhuangqian

③snmpd 启动进程

④snmpget –v  3  –u  zhuangqian –l  authNoPriv  –a  MD5  –A  “19840318”  localhost  sysUpTime.0或者

  snmpget  -v  3   -u  zhuangqian  –l  authPriv    –a  MD5

   -A  “19840318”  –x  DES – X  “19840318”  localhost sysUpTime.0

方法二

# net-snmp-config  --create-snmpv3-user ↙

# 输入用户名(zhuangqian)↙

# 输入authentication pass-phrase(验证)如19840318长度不小于8

# 输入encryption pass-phrase(加密)如19840318,直接回车则跟上面一样。

测试:

Snmpget –v 3 –l authPriv –u zhuangqian –A “19840318” –X “19840318”  localhost  sysUpTime.0

注意v3中authprotocal  MD5  SHA  Privprotocal  DES   AES

客户端能ping通运行snmpd进程的设备,但取不到值,可能是客户端防火墙问题,取消客户端防火墙试试。

测试V2

snmpwalk –v  2c  -c  public  192.168.4.151  if

snmpget  –v  2c  –c  public  192.168.4.151  system.sysName.0

关键字:成功移植  NET-SNMP  ARM平台 引用地址:成功移植NET-SNMP到ARM平台

上一篇:ARM7与CORTEX M3内核高速度下的真实性能分析
下一篇:ARM汇编----IMPORT

推荐阅读最新更新时间:2024-03-16 15:04

ARM和DSP嵌入式系统为核心的实时仿真平台的开发
简介:针对船舶推进系统研制的新颖ARM+DSP嵌入式仿真平台扬长了ARM与DSP两种嵌入式处理器的特点,集丰富的控制接口和高速运算处理能力于一体。 引言 一个大型的船舶轮机模拟器蕴含着30多个全物理过程的数学模型,涉及千余个实时参变量,通常采用功能分散的DCS网络来实现。即便如此,个别仿真工作站由于模型复杂、任务繁重,难以满足实时仿真的要求。例如,动力推进系统的仿真是一个半实物在环的仿真系统,其中既有虚拟的动力装置即仿真计算机上运行的数学模型,又有真实的控制盘台、物理显示设备,是一种集实时控制和高速运算功能于一体的典型系统。 早期开发成功的SMSC2000型轮机模拟器采用工控机作为仿真计算机,所有数据的处理和输入输出的控制
[单片机]
以<font color='red'>ARM</font>和DSP嵌入式系统为核心的实时仿真<font color='red'>平台</font>的开发
基于ARM和FPGA的硬件平台实现嵌入式数控系统
引言 现有的数控系统中多采用工控机加运动控制卡的计算机数控系统方案进行运动控制器的设计。随着工控机整体功能日趋复杂,对运动控制系统的体积、成本、功耗等方面的要求越来越苛刻。现有计算机数控系统在运动控制方面逐渐呈现出资源浪费严重、实时性差的劣势。此外,数控系统的开放性、模块化和可重构设计是目前数控技术领域研究的热点,目的是为了适应技术发展和便于用户开发自己的功能。本文基于ARM和FPGA的硬件平台,采用策略和机制相分离的设计思想,设计了一种具有高开放性特征的嵌入式数控系统。该数控系统不仅具备了以往大型数控系统的主要功能,还具备了更好的操作性和切割性能,而且在开放性方面优势更为突出,使数控系统应用软件具有可移植性和互换性。 1 基
[单片机]
基于<font color='red'>ARM</font>和FPGA的硬件<font color='red'>平台</font>实现嵌入式数控系统
基于ARM+FPGA的开发平台实现了基于CSMA/CA的MAC协议
0 引言 基于CSMA/CA的MAC协议的优势在于其简单和健壮性,适用于分布式网络,每个节点无需维持和动态更新周围相邻节点的状态信息,可以独自决定何时接入信道,只要上层有数据需要传输,MAC层就会对信道进行竞争,因此该协议的应用也相当广泛。嵌入式技术的发展对MAC协议的实现也提供了很好的技术支撑。本文搭建了一种基于ARM和FPGA相结合的嵌入式开发平台,并在此基础上设计与实现了基于CSMA/CA的MAC协议。由于ARM和FPGA本身就是可重构器件,同时将FPGA中的一些协议参数由ARM来设置,通过修改ARM的代码就可以实现对FPGA中协议功能的调整,方便快捷,不再需要重新生成比特文件下载,有利于MAC协议可重构的实现。 1 协
[单片机]
基于<font color='red'>ARM</font>+FPGA的开发<font color='red'>平台</font>实现了基于CSMA/CA的MAC协议
ARM平台LCD显示汉字
做了无数的Windows程序,从来没有把显示汉字和英文字母当成一回事儿。这也难怪,写窗口程序的时候,什么SetWindowText、MessageBox、SetDlgItemText等等,你只需要把自己想要显示的字符串传进去,然后编译、链接,就能够显示出来了,非常非常简单;若说麻烦,可能就是在ASCII码和Unicode码之间转换比较麻烦,但是习惯之后,似乎又没什么了。可是,如果没有操作系统的支持呢?例如,在一个纯DOS的环境下,该如何显示中文?或者是日文、韩文?甚至是英文ASCII码?这就是我想在这里讨论的问题,这里需要一种叫“字模”的技术。 最近在做ARM平台上的简单GUI系统,用于我们自己开发的嵌入式操作系统Potato O
[单片机]
基于ARM v7 Cortex A8的开发平台
   一、ARM Cortex处理器概述 随着嵌入式技术应用领域的不断扩展,对嵌入式系统的要求越来越高,而作为嵌入式系统核心的微处理器也面临日益严竣的挑战。ARM公司从成立以来,一直以知识产权(IP,Intelligence Property)提供者的身份出售知识产权,在32位RISC CPU开发领域中不断取得突破,其设计的微处理器结构已经从v3发展到现在的v7。ARMv7架构是在ARMv6架构的基础上诞生的。该架构采用了Thumb-2技术,它是在ARM的Thumb代码压缩技术的基础上发展起来的,并且保持了对现存ARM解决方案的完整的代码兼容性。Thumb-2技术比纯32位代码少使用31%的内存,减小了系统开销,同时能
[医疗电子]
基于ARM的实时测控系统开发平台
摘要:基于ARM的实时测控系统开发平台,是将高性能、低功耗32bit RISC结构的ARM内核处理器与开放源码的实时嵌入式多任务操作系统%26;#236;C/OS-Ⅱ相结合,并通过Interniche公司的嵌入式TCP/IP协议栈为平台添加网络传输功能,构建一个新型的实时测控系统开发平台。为开发各种智能化、小型化现代测控系统提供可重用、高性能、图形化、网络化软硬件基础平台和高效的开发模式。充分利用高级语言的优势在多任务操作系统的基础上,为平台添加友好的人机交互方式、图形化界面、网络、各种通信接口驱动,使其平台具备现代嵌入式系统的特征。 关键词:实时测控系统 ARM %26;#236;C/OS-II 嵌入式实时操作系统 嵌入式TC
[嵌入式]
ARM发布最新平台安全架构:支持碎片化物联网系统
12月3日消息,世界互联网大会先进科技成果发布会上,ARM全球执行副总裁兼大中华区总裁吴雄昂发布了最新的平台安全架构,通过这样一个安全架构,不光是解决了安全架构的一致性问题,而且能够支持多样化、碎片化的物联网系统。 吴雄昂称,物联网系统的安全不仅仅在于设备,而在于网络、在于云。这里面有上百家芯片公司、上千家系统公司,同时有上百万的开发者,这个安全架构得到了从芯片、安全、系统、软件、云,一百多家科技公司的一致支持。 以下是吴雄昂的演讲: 女士们、先生们,下午好! 首先我代表ARM感谢组委会给我们这个机会,发布ARM最新的平台安全架构。ARM至今为止已经设计了全球应用最广泛的计算技术,今天全球有上千亿个电子设备使用
[网络通信]
基于ARM-WinCE平台的时钟同步设计
随着计算机技术、网络通信技术的进步,组建分布式网络化测试系统,提高测试效率、共享信息资源,已成为现代测试系统发展的方向。分布式测试系统通过网络等通信媒介把分布于各测试点、独立完成特定功能的测试设备连接起来,以达到测试资源共享和协同工作等目的。时钟同步是分布式系统的核心技术之一,其目的是维护一个全局一致的物理或逻辑时钟,使得系统内各个节点中与时间有关的信息、事件及行为有一个全局一致的解释。IEEE1588精确时钟协议是当前分布式测试系统中时钟同步研究的热点。采用硬件支持的IEEE1588协议能够在以太网中不同结点之间实现纳秒级的时钟同步,为工厂自动化、测试和测量以及通信等领域需要高精度时钟同步的应用提供了一种有效的解决方案。本文采
[单片机]
基于<font color='red'>ARM</font>-WinCE<font color='red'>平台</font>的时钟同步设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多每日新闻
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved