NET-SNMP移植
@Yisen 你好,想跟你请教个问题:
net-snmp移植时,在虚拟机上编译后,把安装目录下的sbin目录下的snmpd传到板子上的bin目录下,出现下面的问题,请问是什么原因?谢谢。
问题如下:
/bin #/bin # snmpd -Lsd
/bin/snmpd: line 1: syntax error: unexpected word (expecting ")")
/bin # ldd /bin/snmpd
$ not a dynamic executable
/bin #
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(15)
引用来自“Yisen”的评论
./configure --prefix=/opt/arm/net-snmp --build=i686-linux --host=arm-linux --disable-manuals --enable-mfd-rewrites --enable-shared=no --with-mib-modules='ucd-snmp/diskio ip-mib/ipv4InterfaceTable' --with-cc=arm-linux-gcc --with-ar=arm-linux-ar
可以参考我之前写的这个。--enable-shared后面好像是要加开关的,你再好好看看configure的help
你可以在虚拟机上先装好后用net-snmp-config --snmpconfpath查看默认读取的是哪个snmpd.conf文件
snmpd.conf的修改我不知道你需求,如果你只是简单的使用的话,基本上设置个community就可以用了
./configure --prefix=/opt/arm/net-snmp --build=i686-linux --host=arm-linux --disable-manuals --enable-mfd-rewrites --enable-shared=no --with-mib-modules='ucd-snmp/diskio ip-mib/ipv4InterfaceTable' --with-cc=arm-linux-gcc --with-ar=arm-linux-ar
可以参考我之前写的这个。--enable-shared后面好像是要加开关的,你再好好看看configure的help
你可以在虚拟机上先装好后用net-snmp-config --snmpconfpath查看默认读取的是哪个snmpd.conf文件
snmpd.conf的修改我不知道你需求,如果你只是简单的使用的话,基本上设置个community就可以用了
引用来自“linuxstudy”的评论
回复
在源码包目录下执行的全部操作如下,麻烦你帮我看下,我哪一步有问题才导致之前描述的问题,谢谢!
[root
@0 net-snmp-5.7.3]# make clean
[root
@0 net-snmp-5.7.3]# CC=arm-linux-gcc
[root
@0 net-snmp-5.7.3]# ./configure 后面加一些配置
[root
@0 net-snmp-5.7.3]# make
[root@0 net-snmp-5.7.3]# make install
然后把安装目录下/sbin/snmpd文件传到开发板的bin目录下
把安装目录下/lib文件夹下所有的文件传到开发板的lib下
然后执行snmpd –Lsd,就报之前描述的问题。
./configure执行的完整命令:
./configure --build=i686-linux
--host=arm-linux --enable-mini-agent
--disable-ipv6 --with-endianness=little
--disable-manuals --disable-ucd-snmp-compatibility
--enable-as-needed --disable-embedded-perl
--without-perl-modules --disable-snmptrapd-subagent
--disable-applications --disable-scripts
--with-sys-location=”shanghai,china”
--prefix=/media/disk2/loongson/netsnmp/net-snmpinstall
--enable-mfd-rewrites --with-default-snmp-version=2
--disable-static --enable-shared
史上最佳0基础Swift语言视频教程下载链接:http://dwz.cn/yAFtvjavascript:void(0);
史上最佳0基础Swift语言视频教程下载链接:http://dwz.cn/yAFtv
引用来自“linuxstudy”的评论
回复
在源码包目录下执行的全部操作如下,麻烦你帮我看下,我哪一步有问题才导致之前描述的问题,谢谢!
[root
@0 net-snmp-5.7.3]# make clean
[root
@0 net-snmp-5.7.3]# CC=arm-linux-gcc
[root
@0 net-snmp-5.7.3]# ./configure 后面加一些配置
[root
@0 net-snmp-5.7.3]# make
[root@0 net-snmp-5.7.3]# make install
然后把安装目录下/sbin/snmpd文件传到开发板的bin目录下
把安装目录下/lib文件夹下所有的文件传到开发板的lib下
然后执行snmpd –Lsd,就报之前描述的问题。
./configure执行的完整命令:
./configure --build=i686-linux
--host=arm-linux --enable-mini-agent
--disable-ipv6 --with-endianness=little
--disable-manuals --disable-ucd-snmp-compatibility
--enable-as-needed --disable-embedded-perl
--without-perl-modules --disable-snmptrapd-subagent
--disable-applications --disable-scripts
--with-sys-location=”shanghai,china”
--prefix=/media/disk2/loongson/netsnmp/net-snmpinstall
--enable-mfd-rewrites --with-default-snmp-version=2
--disable-static --enable-shared
回复
在源码包目录下执行的全部操作如下,麻烦你帮我看下,我哪一步有问题才导致之前描述的问题,谢谢!
[root
@0 net-snmp-5.7.3]# make clean
[root
@0 net-snmp-5.7.3]# CC=arm-linux-gcc
[root
@0 net-snmp-5.7.3]# ./configure 后面加一些配置
[root
@0 net-snmp-5.7.3]# make
[root@0 net-snmp-5.7.3]# make install
然后把安装目录下/sbin/snmpd文件传到开发板的bin目录下
把安装目录下/lib文件夹下所有的文件传到开发板的lib下
然后执行snmpd –Lsd,就报之前描述的问题。
./configure执行的完整命令:
./configure --build=i686-linux
--host=arm-linux --enable-mini-agent
--disable-ipv6 --with-endianness=little
--disable-manuals --disable-ucd-snmp-compatibility
--enable-as-needed --disable-embedded-perl
--without-perl-modules --disable-snmptrapd-subagent
--disable-applications --disable-scripts
--with-sys-location=”shanghai,china”
--prefix=/media/disk2/loongson/netsnmp/net-snmpinstall
--enable-mfd-rewrites --with-default-snmp-version=2
--disable-static --enable-shared
是的。 在.configure 命令配置前,先执行的CC=arm-linux-gcc命令
回复
看看编译是不是加了-c?
@Yisen “-c”是从哪里看的?我编译产生的makefile文件中有 # Misc Compiling Stuff
@Yisen makefile文件中有CC = arm-linux-gcc
回复
就是 arm-linux-gcc -o snmpd xxx.c,不要加-c参数
等等,你是用的arm-linux-gcc交叉编译的吗
我把虚拟机上在安装目录下编译产生的lib文件夹下所有的文件传到开发板的lib文件夹下,在之前的./configure 命令时后面也跟了 --disable-static --enable-shared 命令,这个是指定动态编译吧?
缺少库文件吧,或者静态编译,或者把库一起拷过去