pip経由でインストール中にエラーが発生しました。

pip経由でインストール中にエラーが発生しました。

次のコマンドを使用して、pipを介してCentos 7仮想マシンにOpenStackクライアントをインストールしようとしています。

pip install python-openstackclient

インストールが完了すると、次のエラーが発生します。

Command "/usr/bin/python3.4 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-noqgbvv4/netifaces/setup.py';f=getattr(tokenize, 'open', open)(_file_);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, _file_, 'exec'))" install --record /tmp/pip-eyssu5xp-record/install-record.txt
--single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-noqgbvv4/netifaces/

誰かが私を助け、エラーメッセージが私には明確ではないので、問題がどこにあるかを説明できますか?

私のPCにkubuntuを使ってopenstackクライアントをインストールしましたが、問題なく実行されます。

編集:--logオプションを使用してpipを実行しました。これが最後の例外です。

Exception information:
Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python3.4/site-packages/pip/commands/install.py", line 342, in run
    prefix=options.prefix_path,
  File "/usr/lib/python3.4/site-packages/pip/req/req_set.py", line 784, in install
    **kwargs
  File "/usr/lib/python3.4/site-packages/pip/req/req_install.py", line 878, in install
    spinner=spinner,
  File "/usr/lib/python3.4/site-packages/pip/utils/__init__.py", line 707, in call_subprocess
    % (command_desc, proc.returncode, cwd))
pip.exceptions.InstallationError: Command "/usr/bin/python3.4 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-07sbmmn8/netifaces/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-u60jwjmb-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-07sbmmn8/netifaces/

答え1

CentOS 7はデフォルトでPython 2.7に付属しているため、pip3の代わりにpipを使用するとPython 2.7でのみビルドできます。

EPELリポジトリを有効にしてからPython 3.4をインストールしてpip3をインポートする必要があります。

sudo yum install epel-release
sudo yum install python34 python 34-setuptools
sudo easy_install-3.4 pip 

それから戻って走ります。

pip3 install python-openstackclient

私がもう少し詳しく調べたところ、OpenStackにCentOS用のリポジトリがあることがわかりました(RedHatが基本的にOpenStackを所有しているので驚くべきことではありません)。だからあなたは本当にする必要があります

sudo yum install centos-release-openstack-pike 
sudo yum upgrade
sudo yum install python-openstackclient openstack-selinux 

最後はCentOSでSELinuxを管理するのに役立ちます。しかし、CentOS VMでPython 3.4を入手する方法とPython 3 pipパッケージを入手するにはpip3を使用する必要があることを知っていることはまだ良いです。

答え2

python-devel@Karafacegccの答えも正確です。現在、両方の方法がうまく機能しています。ありがとうございます。

関連情報