【问题标题】:Importing psutil causes ImportError导入 psutil 导致 ImportError
【发布时间】:2017-09-11 10:50:11
【问题描述】:

我正在尝试让psutil 在我们的服务器上工作。它正在运行 AIX。没有pip。所以,我下载了repo from github(psutil 的AIX 版本)、cd,然后运行 ​​Python CLI。

现在,尝试执行 import psutil 会导致 ImportError。

bash-4.2$ python
Python 2.7.5 (default, Aug 16 2013, 14:02:06) [C] on aix6
Type "help", "copyright", "credits" or "license" for more information.
>>> import psutil
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "psutil/__init__.py", line 163, in <module>
    from . import _psaix as _psplatform
  File "psutil/_psaix.py", line 20, in <module>
    from . import _psutil_aix as cext
ImportError: cannot import name _psutil_aix
>>> import psutil              ## IMPORTING AGAIN THE SAME SESSION CAUSES DIFFERENT ERROR
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "psutil\__init__.py", line 39, in <module>
    from . import _common
ImportError: cannot import name _common

我可以在这里做什么?使用python setup.py install --user 在本地安装模块也不起作用:

bash-4.2$ python setup.py install --user
running install
running build
running build_py
running build_ext
building 'psutil._psutil_aix' extension
xlc_r -ma -I/opt/freeware/include -DAIX_GENUINE_CPLUSCPLUS -Wl,-brtl -g -DNDEBUG -O2 -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=532 -DPSUTIL_AIX=1 -I/opt/freeware/include/python2.7 -c psutil/_psutil_common.c -o build/temp.aix-7.1-2.7/psutil/_psutil_common.o
unable to execute xlc_r: No such file or directory
error: command 'xlc_r' failed with exit status 1

我已经尝试对完美运行的tweepy 包执行相同的操作(假设sixrequestsrequests_oauthlib 已经安装)。

编辑:为了明确这不限于 AIX,我尝试在 Windows 上做同样的事情,它给出了同样的错误。

【问题讨论】:

  • 如果你想安装一个没有管理员权限的模块,你可以在 pip 命令中添加--userflag :)
  • 啊,是的,我知道,但由于这是一台工作机器,pip 根本不存在。
  • 试试python -m pip install psutil --user它可以工作:)
  • 这给了/usr/bin/python: No module named pip

标签: python python-import psutil


【解决方案1】:

psutil 目前不支持 AIX,尽管它会在下一个主要版本中支持。

【讨论】:

  • 我知道!我一直在密切关注this PR。但我正在尝试 wiggin15(aix 分支)的fork。您能否估计下一个版本何时发布?
  • 同样的方法导入在Windows下也不行。
【解决方案2】:

一个可能的解决方案是从 PyPi 下载轮子 (psutil on PyPi)

然后使用 zip 程序(7zip 或类似程序)打开它。 里面应该有一个psutil 文件夹。将此文件夹放在您的脚本旁边并尝试导入它。

【讨论】:

  • 我根据实际情况编辑了问题。我相信psutil的AIX版本没有轮子
猜你喜欢
  • 1970-01-01
  • 2012-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多