我在Ubuntu上成功编译了net-snmp-5.7.3。 :D这是Ubuntu的特定版本:Python 2绑定Net-SNMP错误 - 未定义符号:netsnmp-memdup
Linux loserBox 3.13.0-32-generiC#57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
我似乎已成功安装了net-snmp的Python绑定。这包含在net-nsmp下载中,作为其中包含setup.py
文件的标题为“Python”的不同文件夹。但是,在运行命令python setup.py test
时,我注意到一些问题。我认为这可能没有什么可担心的,所以我继续前进并执行python setup.py install
我不确定README文件中说明“python setup.py test(需要本地运行的代理w/config提供)”的含义。所以,这就是为什么我安装了失败的测试或其他东西。无论如何,我不确定这是否有问题。
成功安装net-snmp的python绑定后,我将目录切换回我的桌面并打开了一个交互式python shell。从这里我输入netsnmp
模块并收到下面的错误。它几乎看起来像在回溯中引发错误的变量netsnmp_memdup
中存在拼写错误。这看起来像是C代码的问题,而不是python。
Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import netsnmp
/usr/lib/python2.7/dist-packages/pkg_resources.py:1031: UserWarning:
/home/loser_user/.python-eggs is writable by group/others and vulnerable to attack
when used with get_resource_filename. Consider a more secure location
(set with .set_extraction_path or the PYTHON_EGG_CACHE environment variable).
warnings.warn(msg, UserWarning)
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: /home/loser_user/.python-eggs/netsnmp_python-1.0a1-py2.7-linux-x86_64.egg-
tmp/netsnmp/client_intf.so: undefined symbol: netsnmp_memdup
有谁知道如何解决这个问题?我查看了这个项目的sourceforge邮件列表页面,并搜索了supoort档案,但没有找到任何东西。
感谢您收听疯狂的男人的Python问题。
节日快乐,
user_loser
我在Ubuntu 14.04上遇到同样的问题。 –