gpt4 book ai didi

python - 在 centos 7 上安装 python netsnmp

转载 作者:行者123 更新时间:2023-11-28 17:36:39 27 4
gpt4 key购买 nike

我收到此错误 fatal error: net-snmp/net-snmp-config.h: No such file or directory。我已经安装了 gcc、python-devel、net-snmp、net-snmp-utils、net-snmp-python 和其他开发依赖项。

CentOS Linux release 7.1.1503 (Core)
[admin@localhost python]$ wget http://sourceforge.net/projects/net-snmp/files/net-snmp/5.5.2/net-snmp-5.5.2.tar.gz
[admin@localhost python]$ pwd
/tmp/net-snmp-5.5.2/python
[admin@localhost python]$ python setup.py build
sh: net-snmp-config: command not found
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/netsnmp
copying netsnmp/__init__.py -> build/lib.linux-x86_64-2.7/netsnmp
copying netsnmp/client.py -> build/lib.linux-x86_64-2.7/netsnmp
creating build/lib.linux-x86_64-2.7/netsnmp/tests
copying netsnmp/tests/__init__.py -> build/lib.linux-x86_64-2.7/netsnmp/tests
copying netsnmp/tests/test.py -> build/lib.linux-x86_64-2.7/netsnmp/tests
running build_ext
building 'netsnmp.client_intf' extension
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/netsnmp
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/home/admin/miniconda/envs/py_env_clink/include/python2.7 -c netsnmp/client_intf.c -o build/temp.linux-x86_64-2.7/netsnmp/client_intf.o
netsnmp/client_intf.c:9:38: fatal error: net-snmp/net-snmp-config.h: No such file or directory
#include <net-snmp/net-snmp-config.h>
compilation terminated.
error: command 'gcc' failed with exit status 1
[admin@localhost python]$

更新 1: 在 netsnmp 源目录上运行 ./configure && make && make install 后,我能够运行 python setup.py install。但是,现在我从 python 收到此错误:

>>> import netsnmp
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "netsnmp/__init__.py", line 1, in <module>
from client import *
File "netsnmp/client.py", line 1, in <module>
import client_intf
ImportError: No module named client_intf
>>>

更新 2: 我的错!!我正在从 netsnmp source dir cd/tmp/net-snmp-master/python/ 的目录运行 python 解释器,这导致我给出预期的错误,因为 python 没有使用来自 egg 的导入,而是从源头上。无论如何,在执行 cd ~ 后,我收到一个新错误

>>> import netsnmp
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build/bdist.linux-x86_64/egg/netsnmp/__init__.py", line 1, in <module>
#
File "build/bdist.linux-x86_64/egg/netsnmp/client.py", line 1, in <module>
File "build/bdist.linux-x86_64/egg/netsnmp/client_intf.py", line 7, in <module>
File "build/bdist.linux-x86_64/egg/netsnmp/client_intf.py", line 6, in __bootstrap__
ImportError: libnetsnmp.so.30: cannot open shared object file: No such file or directory
>>> exit()

更新 3

[root@localhost ~]# sudo ldconfig
[root@localhost ~]# sudo ldconfig -p | grep netsnmp
libnetsnmptrapd.so.31 (libc6,x86-64) => /lib64/libnetsnmptrapd.so.31
libnetsnmptrapd.so (libc6,x86-64) => /lib64/libnetsnmptrapd.so
libnetsnmpmibs.so.31 (libc6,x86-64) => /lib64/libnetsnmpmibs.so.31
libnetsnmpmibs.so (libc6,x86-64) => /lib64/libnetsnmpmibs.so
libnetsnmphelpers.so.31 (libc6,x86-64) => /lib64/libnetsnmphelpers.so.31
libnetsnmphelpers.so (libc6,x86-64) => /lib64/libnetsnmphelpers.so
libnetsnmpagent.so.31 (libc6,x86-64) => /lib64/libnetsnmpagent.so.31
libnetsnmpagent.so (libc6,x86-64) => /lib64/libnetsnmpagent.so
libnetsnmp.so.31 (libc6,x86-64) => /lib64/libnetsnmp.so.31
libnetsnmp.so (libc6,x86-64) => /lib64/libnetsnmp.so
[root@localhost ~]# find / -name libnetsnmp.so*
find: ‘/run/user/1000/gvfs’: Permission denied
/usr/lib64/libnetsnmp.so
/usr/lib64/libnetsnmp.so.31
/usr/lib64/libnetsnmp.so.31.0.2
/usr/local/lib/libnetsnmp.so.30.0.3
/usr/local/lib/libnetsnmp.so.30.0.1
/usr/local/lib/libnetsnmp.so
/usr/local/lib/libnetsnmp.so.30
[root@localhost ~]#

UPDATE4:最终通过运行 sudo ldconfig 并修改 /etc/ld.so.conf.d/libc.conf 解决了问题

[root@localhost ~]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
[root@localhost ~]# cat > /etc/ld.so.conf.d/libc.conf <<EOF
> /usr/local/lib
> EOF
[root@localhost ~]# ldconfig
[root@localhost ~]# python
>>> import netsnmp
>>> exit()
[root@localhost ~]#

最佳答案

确保您已经安装了 net-snmp-devel。查看/usr/include/net-snmp/net-snmp-config.h是否存在

关于python - 在 centos 7 上安装 python netsnmp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29789121/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com