、编译动态库

将写完的snmp代理程序编译生成动态库

gcc -c -fpic telnetConfig.c -o telnetConfig.o -I/usr/local/net-snmp/include

gcc -shared telnetConfig.o -o libtelnetConfig.so

其中/usr/local/net-snmp是安装目录,里面有include目录,包含了使用的头文件。

通过下面两条命令,查看安装目录,找到配置文件

net-snmp-config --default-mibdirs

snmptranslate -Dinit_mib

、更改配置文件

找到安装目录中的snmp配置文件,snmpd.conf:

vim /usr/local/share/snmp/snmpd.conf

在最后添加

dlmod telnetConfig /home/tony/.snmp/mibs/libtelnetConfig.so

表示动态添加库,后面的/home/tony/.snmp/mibs/libtelnetConfig.so是产生的so文件的目录。
、启动snmp snmpd 或者 sudo snmpd 调试启动: <install>/snmpd –d –f –Lo –c <install>/snmpd.conf 一般启动 <install>/snmpd –c <install>/snmpd.conf 、snmp移植到交换机中 如果要移植到交换机中,在第一步就要使用交叉编译工具进行编译。 将arm-linux-gcc所在的目录添加到环境变量中 export PATH=$PATH:/home/liutao/proj/switch/brcm/platform/iproc/buildroot/output/host/usr/bin 将生成的.so文件添加到目标板中,例如/lib/。(记住从ftp从服务器下载到目标板的过程中,需要使用bin模式进行下载,否则文件不完整,会有丢失)。
然后将snmpd.conf配置文件也下载到目标板中,例如放在/usr/share/。 在snmpd.conf文件的最后添加 dlmod telnetConfig /lib/libtelnetConfig.so 、启动snmpd并指定配置文件。 ./snmpd -c /usr/share/snmpd.conf

netsnmp编译动态库的更多相关文章

  1. ndk学习8: 编译动态库

    目录: 手工编译动态库 ndk-build编译动态库(Eclipse环境)   手工编译静态库 老规矩还是先手工操作,知其然并知其所以然   需要用到的核心命令: gcc -g -c -fpic -W ...

  2. Linux gcc编译(动态库,静态库)

    1. linux 库路径: /lib , /usr/lib , /usr/local/lib 2.linux 编译静态库 a.编写源文件vi pr1.c void print1(){    print ...

  3. gcc 动态编译 动态库路径

    gcc 动态编译(共享库) 动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令优点:体积小,编译快缺点:依赖性高 代码如下: [root@74-82-173-21 ...

  4. Linux:编译动态库时遇到的错误relocation R_X86_64_32 against `a local symbol'

    编译动态库时遇到如下错误: ... ... relocation R_X86_64_32 against `a local symbol' can not be used when making a ...

  5. Linux环境编译动态库和静态库总结

    对Linux环境动态库和静态库的一些基础知识做一些总结, 首先总结静态库的编译步骤. 1 先基于.cpp或者.c文件生成对应的.o文件 2将几个.o文件 使用ar -cr命令 生成libname.a文 ...

  6. gcc 编译动态库和静态库

    Linux C 编程入门之一:gcc 编译动态库和静态库 cheungmine 2012 参考: C程序编译过程浅析 http://blog.csdn.net/koudaidai/article/de ...

  7. 【VS工程设置】 编译动态库,命令行添加参数,不使用预编译头,指定该项目链接 哪种 运行库

    编译动态库 注意: 动态库: [目标文件扩展] => .dll + [配置类型] => 动态库(.dll) 静态库: [目标文件扩展] => .lib + [ 配置类型]=> ...

  8. gflags 编译动态库

    gflags 编译动态库 这里涉及到gflags的安装,原来使用 sudo apt-get install libgflags-dev 但是后面有人在环境中下载安装了libgflags的安装包,解压后 ...

  9. android studio 2.3 编译动态库

    工作需要编译android下的动态库,本以为是一件简单的事,没想到因为工具,以及google本身被墙的原因,折腾了好久. 在windows外的平台搞事情,寿命都得缩短. 一种方案是用eclipse+n ...

随机推荐

  1. Excel导入的时候日期格式会变成double式的String数据处理

    例如:java从Excel单元格读取的日期如43052.0,在后台处理的时候又需要将其处理为日期格式,使用如下代码对其进行转换即可: SimpleDateFormat sdf = new Simple ...

  2. ASP.NET MVC 笔记

    (从今天开始,还是换回默认的代码高亮插件吧...话说此篇仅供个人遗忘后查阅,木有详尽解释...) 1.Controller中的所有Action方法不限制返回值类型,返回值应该至少可以被ToString ...

  3. 【JUnit4.10源码分析】5.2 Rule

    标注@Rule TestRule是一个工厂方法模式中的Creator角色--声明工厂方法. package org.junit.rules; import org.junit.runner.Descr ...

  4. chkconfig命令具体介绍

    命令介绍: chkconfig命令用来更新.查询.改动不同执行级上的系统服务.比方安装了httpd服务,而且把启动的脚本放在了/etc/rc.d/init.d文件夹下,有时候须要开机自己主动启动它,而 ...

  5. 【翻译自mos文章】job 不能自己主动执行--这是另外一个mos文章,本文章有13个解决方法

    job 不能自己主动执行--这是另外一个mos文章 參考原文: Jobs Not Executing Automatically (Doc ID 313102.1) 适用于: Oracle Datab ...

  6. linux下查看doc在线帮助文件

    常看到某个linux下的工具,有带有doc结尾的文件,但是新手不知道如何查看. 我一番查找,终于知道了... 比如:ipython这个软件,在ubuntu里面,有ipython-doc的一个包. 安装 ...

  7. ControlExtensionTest(二)-----CCControlSlider

    #include "../CCControlScene.h" class CCControlSliderTest : public CCControlScene { public: ...

  8. win64位操作系统下安装pl/sql developer 并登录连接到oracle12c

    1)安装Oracle 12c 64位2)安装32位的Oracle客户端( instantclient-basic-nt-12.1.0.1.0)下载instantclient-basic-nt-12.1 ...

  9. 149. Best Time to Buy and Sell Stock【medium】

    Say you have an array for which the ith element is the price of a given stock on day i. If you were ...

  10. GetLastError()返回值大全

    [0]-操作成功完成.[1]-功能错误.[2]-系统找不到指定的文件.[3]-系统找不到指定的路径.[4]-系统无法打开文件.[5]-拒绝访问.[6]-句柄无效.[7]-存储控制块被损坏.[8]-存储 ...