【问题标题】:Python - ImportError on OpenWrtPython - OpenWrt 上的 ImportError
【发布时间】:2015-04-14 19:41:03
【问题描述】:

我在我的 OpenWrt 系统上安装了 Python 2.7.3,当我尝试导入套接字模块时,我得到了 ImportError。

File "/usr/lib/python2.7/socket.py", line 47, in <module>
import _socket
ImportError: No module named _socket

我检查了 _socket.so 模块是否安装在 Python 包中,并且确实如此。而且我还检查了PYTHONPATH,也是正确的。

_socket.so的路径是:/usr/lib/python2.7/lib-dynload/_socket.so

这是我的 PYTHONPATH :

/usr/lib/python27.zip
/usr/lib/python2.7
/usr/lib/python2.7/plat-linux2
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/lib/python2.7/site-packages

有人有想法吗?

【问题讨论】:

    标签: python python-2.7 importerror openwrt


    【解决方案1】:

    您可以立即使用 PYTHONPATH 解决它,请参阅 How to use PYTHONPATH

    但这是一个 hack,取决于你的 openwrt 版本/你如何安装 python,我会在特定的#openwrt 支持频道上询问。顺便说一句,你不是唯一一个遇到这个问题的人https://translate.google.com/translate?hl=en&sl=pl&tl=en&u=http%3A%2F%2Feko.one.pl%2Fforum%2Fviewtopic.php%3Fid%3D10015

    【讨论】:

    • 我不明白我为什么要修改 PYTHONPATH。 _socket.so 模块安装在 PYTHONPATH 中设置的路径中......是的,我也看到了这个主题,但它并没有带来真正的答案......我还尝试安装另一个带有 OpenWrt 提要的 Python 版本并使用补丁。但我无法在我的 OpenWrt 环境中安装旧版本。
    • 使用 PYTHONPATH,您可以添加包含 .so python 的目录 /usr/lib/python2.7/lib-dynload/ 未找到。您使用的是主干版本的 openwrt 吗?如果是这样,最好在包存储库中报告问题。
    • PATHPYTHON 中已经有 /usr/lib/python2.7/lib-dynload。我在最后添加了一个 / 的相同路径,它也不起作用。而且我不使用主干版本的openwrt。好的,我会报告的。
    猜你喜欢
    • 1970-01-01
    • 2019-04-03
    • 2016-03-23
    • 2015-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-20
    • 2016-11-28
    相关资源
    最近更新 更多