pip installにより、「コマンド” python setup.py egg_info“がエラーコード1で失敗しました」


13

rpy2Ubuntu 16.04にpip installでpythonパッケージをインストールしようとしています:

pip install rpy2==2.2.7

エラーメッセージが表示されます(以下の完全な出力を参照):

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-EuOI6K/unroll/

同じことが他のパッケージ、たとえばpip install unroll、またはを使用して発生しますpip2。この投稿も同じ問題だと思いましたが、sudoを使用することで解決されます。

試したソリューション

私はこの中で解決策を試みた後のように、: 、pip install --upgrade setuptools(sudo) easy_install -U setuptoolsまたはsudo apt-get install python-setuptoolsが、無駄に。

python / pip情報

誰かが私に奇妙なpython / pipインストールがあるかもしれないと示唆しました、ここにいくつかの情報があります:

sudo which python pip pip2 | xargs -rd '\n' readlink -f 
/usr/bin/python2.7   
/usr/local/bin/pip  
/usr/local/bin/pip2  

sudo python --version   
Python 2.7.12  

sudo pip --version  
pip 9.0.1 from /home/matifou/.local/lib/python2.7/site-packages (python 2.7)  
/usr/bin/pip2 --version  
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)

ls -l $(which pip); dpkg -S /usr/bin/pip
-rwxr-xr-x 1 root root 204 Nov  8 16:24 /usr/local/bin/pip
python-pip: /usr/bin/pip

完全なエラー出力

pipインストールrpy2 == 2.2.7  
rpy2 == 2.2.7の収集キャッシュされたrpy2-2.2.7.ta​​r.gzの使用  
    コマンドpython setup.py egg_infoからの完全な出力:
    egg_infoの実行
    pip-egg-info / rpy2.egg-infoの作成
    pip-egg-info / rpy2.egg-info / PKG-INFOを書き込む
    トップレベルの名前をpip-egg-info / rpy2.egg-info / top_level.txtに書き込む
    dependency_linksをpip-egg-info / rpy2.egg-info / dependency_links.txtに書き込む
    マニフェストファイル「pip-egg-info / rpy2.egg-info / SOURCES.txt」を書き込んでいます
    トレースバック(最新の呼び出しが最後):
      ファイル ""、1行目 
      ファイル「/tmp/pip-build-EkrbmM/rpy2/setup.py」、行462、 
        [os.path.join( 'doc'、 'source'、 'rpy2_logo.png')]))]、
      ファイル "/usr/lib/python2.7/distutils/core.py"、line 151 in setup
        dist.run_commands()
      run_commands内のファイル「/usr/lib/python2.7/distutils/dist.py」、行953
        self.run_command(cmd)
      run_command内のファイル「/usr/lib/python2.7/distutils/dist.py」、972行目
        cmd_obj.run()
      ファイル "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py"、
実行中の280行
        self.find_sources()
      ファイル "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py"、
295行目のfind_sources
        mm.run()
      ファイル "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py"、
実行中の526行目
        self.add_defaults()
      ファイル "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py"、
add_defaultsの562行目
        sdist.add_defaults(self)
      ファイル "/usr/local/lib/python2.7/dist-packages/setuptools/command/py36compat.py"、
行36、add_defaults
        self._add_defaults_ext()
      ファイル "/usr/local/lib/python2.7/dist-packages/setuptools/command/py36compat.py"、
119行目、_add_defaults_ext
        build_ext = self.get_finalized_command( 'build_ext')
      get_finalized_commandのファイル "/usr/lib/python2.7/distutils/cmd.py"、312行目
        cmd_obj.ensure_finalized()
      ファイル「/usr/lib/python2.7/distutils/cmd.py」、109行目、ensure_finalized
        self.finalize_options()
      finalize_optionsのファイル「/tmp/pip-build-EkrbmM/rpy2/setup.py」、155行目
        config + = get_rconfig(r_home、about)
      get_rconfigのファイル「/tmp/pip-build-EkrbmM/rpy2/setup.py」、319行目
        rc = RConfig.from_string(rconfig、allow_empty = allow_empty)
      from_string内のファイル「/tmp/pip-build-EkrbmM/rpy2/setup.py」、279行目
        + '\ nin文字列\ n' +文字列)
    ValueError:無効な部分文字列
    -fopenmp
    文字列で
    -Wl、-export-dynamic -fopenmp -Wl、-Bsymbolic-functions -Wl、-z、relro -L / usr / lib / R / lib -lR -lpcre -llzma -lbz2 -lz -lrt -ldl -lm

コマンド「python setup.py egg_info」が/ tmp / pip-build-EkrbmM / rpy2 /のエラーコード1で失敗しました

ピップインストールアンロール
キャッシュされたunroll-0.1.0.tar.gzを使用したアンロールの収集
    コマンドpython setup.py egg_infoからの完全な出力:
    http://pypi.python.org/packages/source/d/distribute/distribute-0.6.14.tar.gzをダウンロードしています
    トレースバック(最新の呼び出しが最後):
      ファイル ""、1行目 
      ファイル「/tmp/pip-build-QimGjp/unroll/setup.py」の2行目 
        ez_setup.use_setuptools()
      use_setuptoolsのファイル「/usr/local/lib/python2.7/dist-packages/ez_setup.py」、行145
        return _do_download(version、download_base、to_dir、download_delay)
      _do_download内のファイル "/usr/local/lib/python2.7/dist-packages/ez_setup.py"、124行目
        to_dir、download_delay)
      ファイル「/usr/local/lib/python2.7/dist-packages/ez_setup.py」、193行目、download_setuptools内
        src = urlopen(url)
      ファイル「/usr/lib/python2.7/urllib2.py」、154行目、urlopen
        opener.open(url、data、timeout)を返す
      ファイル「/usr/lib/python2.7/urllib2.py」、435行目、オープン
        response = meth(req、response)
      ファイル「/usr/lib/python2.7/urllib2.py」、548行目、http_response内
        'http'、リクエスト、レスポンス、コード、メッセージ、hdrs)
      ファイル「/usr/lib/python2.7/urllib2.py」、473行目、エラー
        self._call_chain(* args)を返す
      _call_chainのファイル「/usr/lib/python2.7/urllib2.py」、行407
        結果= func(* args)
      ファイル「/usr/lib/python2.7/urllib2.py」、556行目、http_error_default内
        HTTPError(req.get_full_url()、code、msg、hdrs、fp)を発生させます
    urllib2.HTTPError:HTTPエラー403:SSLが必要です

コマンド「python setup.py egg_info」がtmp / pip-のエラーコード1で失敗しました
build-QimGjp / unroll /

Rは既にインストールされていますか?
lapisdecor 2017

1
次の-Hようにフラグを付けて実行してみてくださいsudo -H
ジョージ・ウドセン

申し訳ありませんが、これはあまりにも面倒なので、現時点で誰かがもつれを解く手助けをしたくはありません。賞金があっても。リマインダーをありがとう。
David Foerster '19年

@Georgeに感謝しますが、残念ながらsudo -H機能しません:-(
Matifou 2017年

回答:


4

アップグレードsetuptools使用pip

python-setuptoolsUbuntu 16.04 LTSのパッケージリポジトリにあるのバージョンは古くなっているか、メンテナンスされていません。pipパッケージマネージャーに依存 する代わりに、でアップグレードします。

$ sudo pip install --upgrade setuptools

1

私自身の質問に対して私が取った解決策:提案された回答は問題を解決しなかったので、私は最終的にを使用してconda、必要なパッケージ用の特定の環境を作成し、これはうまくいきました!これは、並列バージョンをインストールする必要があるため(特に、スペースにminicondaを使用できます)、最良の解決策ではありませんが、実用的なものです!


1

更新setuptoolsしても問題は解決しませんでした。ただし、pipにそれ自体をアップグレードするように指示しました。

次のコマンドは私の問題を解決しました(この回答から)

pip install --upgrade pip

おかげで、アップグレードsetuptoolsもうまくいきませんでした。しかし、アップグレードpipは問題を解決します。
fsevenm

0

あなたはセットアップツールを入手する必要があり、おそらく開発モジュールは次のように入力します

sudo apt-get install python-setuptools
sudo apt-get install python-dev

最初にpipをアップグレードして、スムーズな実行以外に何もないことを確認することは意味があるかもしれません

sudo apt install python-pip

幸運を


1
ありがとう。しかし、私は実際にはすでに...彼らの最新バージョンには、これら3つがインストールされている
Matifou
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.