2016-09-11 15 views
0

これは私が対処している厳しい状況です。ここに私の問題の短いバージョンです:Pythonバージョンの競合とpip3

  • 私はopenCVライブラリとPython 3.5.xインストールしたいのUbuntu 12.04
  • に取り組んでいます。また、Pythonのパッケージインストールの管理にpip3を使用したいと思います。ここで

は私のニシキヘビのバージョンが

$ python --version 
     Python 2.7.3 
    $ python3 --version 
     Python 3.5.2 

のように見えますこれまでのところ、それは私が私の目標を達成しているどのように見えるかです。

私はpython3ライブラリを管理するためにvirtualenvを使用する場合:

virtualenv -p /usr/bin/python3 py3env 
    source py3env/bin/activate 

次のように私は私のpythonのバージョンを参照してください。

(py3env)[email protected]:~$ python3 --version 
    Python 3.2.3 

を、私は私のマシンでのpythonの別のバージョンがあるようです3.2.3は私がインストールしたバージョン3.5.2でうんざりしています。これが私の最初の問題です。

2番目の関連する問題は、pip 3をインストールできないことです。私が原因同じPythonのバージョンの競合に受け取り、このエラーがあります:

$ pip 
/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/_vendor /pkg_resources/__init__.py:80: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here. 
    warnings.warn(msg) 
Traceback (most recent call last): 
    File "/usr/local/bin/pip", line 9, in <module> 
load_entry_point('pip==8.1.2', 'console_scripts', 'pip')() 
    File "/usr/lib/python3/dist-packages/pkg_resources.py", line 337, in load_entry_point 
return get_distribution(dist).load_entry_point(group, name) 
    File "/usr/lib/python3/dist-packages/pkg_resources.py", line 2280, in load_entry_point 
return ep.load() 
    File "/usr/lib/python3/dist-packages/pkg_resources.py", line 1990, in load 
    entry = __import__(self.module_name, globals(),globals(), ['__name__']) 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/__init__.py", line 16, in <module> 
    from pip.vcs import git, mercurial, subversion, bazaar # noqa 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/vcs/mercurial.py", line 9, in <module> 
    from pip.download import path_to_url 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/download.py", line 36, in <module> 
    from pip.utils.ui import DownloadProgressBar, DownloadProgressSpinner 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/utils/ui.py", line 15, in <module> 
    from pip._vendor.progress.bar import Bar, IncrementalBar 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/_vendor/progress/bar.py", line 48 
empty_fill = u'∙' 
       ^
    SyntaxError: invalid syntax 
    [email protected]:~$ pip3 
    /usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/_vendor/pkg_resources/__init__.py:80: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here. 
    warnings.warn(msg) 
    Traceback (most recent call last): 
    File "/usr/local/bin/pip3", line 9, in <module> 
    load_entry_point('pip==8.1.2', 'console_scripts', 'pip3')() 
    File "/usr/lib/python3/dist-packages/pkg_resources.py", line 337, in load_entry_point 
    return get_distribution(dist).load_entry_point(group, name) 
    File "/usr/lib/python3/dist-packages/pkg_resources.py", line 2280, in load_entry_point 
    return ep.load() 
    File "/usr/lib/python3/dist-packages/pkg_resources.py", line 1990, in load 
    entry = __import__(self.module_name, globals(),globals(), ['__name__']) 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/__init__.py", line 16, in <module> 
    from pip.vcs import git, mercurial, subversion, bazaar # noqa 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/vcs/mercurial.py", line 9, in <module> 
from pip.download import path_to_url 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/download.py", line 36, in <module> 
    from pip.utils.ui import DownloadProgressBar, DownloadProgressSpinner 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/utils/ui.py", line 15, in <module> 
    from pip._vendor.progress.bar import Bar, IncrementalBar 
    File "/usr/local/lib/python3.2/dist-packages/pip-8.1.2-py3.2.egg/pip/_vendor/progress/bar.py", line 48 
    empty_fill = u'∙' 
       ^
    SyntaxError: invalid syntax 

述べた問題について、あなたの専門家の意見は何ですか?これを処理するためのすばらしいアイデアですか?事前におかげであります。

+0

は '/ usr/bin/python3'とは' which python3'ですか? –

+0

'$ which python3'の結果は'/usr/local/bin/python3'です。 –

+1

あなたの答えがあります。異なるバイナリからvirtualenvを作成しています。 '/ usr/bin/python3 --version'は3.2.3です。'/usr/local/bin/python3 --version'は3.5.2です。 –

答えて

1

これは私の最初の問題を解決しました。今度は2番目の問題が残っています。どうすれば py3.5.2(好ましくはviretualenvを使用して)の下にpip3をインストールできますか?ここで

答えです:

python3 -m virtualenv py3env 

source py3env/bin/activate 

のPython 3.5は、上記のあなたは、たとえばピップ:)

を使用できるコマンドも後に、デフォルトではピップを持っている必要があります。

python -m pip install requests 

EDIT :

Here virtualenvを作成した後もまだpipをインストールする必要がある場合は、非常に良い説明が得られます。

関連する問題