python setuptools> 12.2をubuntu 15.04でアップグレードする方法


11

aptパッケージは12.2のようです

sudo pip install -U setuptools バージョンを実行 すると、まだ12.2で止まっているようです

$ python
>>> import pkg_resources
>>> r = pkg_resources.require(["setuptools"])[0]
>>> print("setuptools version: %s" % r.version)
setuptools version: 12.2

[編集]

setuptoolsのOSバージョンを上書きしないことに気づきました:

Downloading/unpacking pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-7.1.2-py2.py3-none-any.whl#md5=5ff9fec0be479e4e36df467556deed4d
  Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB): 1.1MB downloaded
Downloading/unpacking setuptools from https://pypi.python.org/packages/3.4/s/setuptools/setuptools-18.3.2-py2.py3-none-any.whl#md5=58c1e15fe0c124ab0880a2691f232434
  Downloading setuptools-18.3.2-py2.py3-none-any.whl (462kB): 462kB downloaded
Installing collected packages: pip, setuptools
  Found existing installation: pip 1.5.6
    Not uninstalling pip at /usr/lib/python2.7/dist-packages, owned by OS
  Found existing installation: setuptools 12.2
    Not uninstalling setuptools at /usr/lib/python2.7/dist-packages, owned by OS
Successfully installed pip setuptools
Cleaning up...

[/編集]


1
sudo pip install -U pip setuptools
ABの

@ABだけがこれを試み、それはOSのバージョンを上書きしません気づいた...これはおそらく問題..です
スチュアートアクソン

回答:


18
  1. リポジトリのバージョンを削除する

    sudo apt-get remove python-setuptools
  2. 必要に応じて、pip再度インストールします

    wget https://bootstrap.pypa.io/get-pip.py
    sudo -H python get-pip.py
  3. setuptools経由でインストールpip

    sudo -H pip install -U pip setuptools

そして今、あなたはもう一度テストを始めます

% python
Python 2.7.9 (default, Apr  2 2015, 15:33:21) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pkg_resources
>>> r = pkg_resources.require(["setuptools"])[0]
>>> print("setuptools version: %s" % r.version)
setuptools version: 18.3.2

注意

いずれかに依存するパッケージpython-setuptoolsまたはpython-pipこれらのパッケージを戻すパッケージをインストールするため、この手順を繰り返す必要がある場合があります。


centosでも動作します
Abhishek Dujari

2

ABによって提案されたソリューションは十分ではない可能性があります。setuptoolsの最近のバージョンでpkg_resourcesは、パッケージですが、以前は単一のモジュールでした。

更新setuptoolsされます説明した方法で古いを残してpkg_resources.py{,c}周囲にインポートするときに、次のエラーにつながる可能性があり、setuptools

AttributeError: 'module' object has no attribute 'packaging'

削除するには、次の手順を実行します。

  1. 古いpkg_resourcesモジュールがどこにあるかを見つけてください:

    $ python -c 'import pkg_resources; print(pkg_resources.__file__)'
    /usr/lib/python2.7/dist-packages/pkg_resources.pyc
  2. このファイルとその.pyファイルを削除します。

    $ sudo rm /usr/lib/python2.7/dist-packages/pkg_resources.py*

警告

このファイルはpython-pkg-resourcesパッケージを介してインストールされた可能性があります。したがって、このパッケージを更新または再インストールすると、古いモジュールが復元されます。また、によって制御されることになっているファイルをいじっていることにも注意してくださいapt


1
ABの回答はほとんどの方法で受け入れたが、両方を受け入れることができれば受け入れた。-私はまだこれを試す機会がありませんでした。Ubuntuをアップグレードしてから、その上のsetuptoolsをいじるのが少し嫌なので、何が起こるかを確認するには、仮想マシンでこれを試す必要があるでしょう。
Stuart Axon、2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.