1

10.8.1 (Mountain Lion) を使用しています。

Mountain Lion にアップグレードした後、MacPorts の一部が機能しなくなりました。生活を楽にするために/opt/local/、MacPorts の最新バージョンを消去して再インストールし、続いてポート自体を再インストールしました。

これにより、私が使用していたポートの多くがバンドルされている OS X のデフォルトに戻ってしまうという副作用がありました。.profilePATH の最初にあることを確認するために開きまし/opt/local/binたが、問題は解決していません。

port selectの出力は症状であると思われます:

$ port select python
Available versions for python:
    none (active)  # shouldn't the bundled version be here?
    python27
    python32

$ which python
/usr/bin/python

アクティブ ポート ( sudo port select --set python python27) を変更すると問題は解決しますが、すべてのポートが で機能するわけではありませんport select。ここで何が起こっているか知っている人はいますか?

編集:これを完全な修正とは見なしていないことを明確にする必要があります-のようなコマンドでAppleバージョンに戻すことができるはずですがsudo port select --set python python25-apple、根本的な問題を解決することによってのみ元に戻ると思われます.

記録のために、の内容~/.profile

export PATH=/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/texbin
4

1 に答える 1

3

より多くの情報がなければ、どのような動作が見られ、何が見られると予想されるかを推測することは困難です。MacPorts はport select、あなたが言及したいくつかのコマンドのオプションを提供しますが、 pip にはまだpythonありません。一般に、MacPorts はバージョン固有のサフィックスが付いた Python スクリプトをインストールするため、オプションに関係なく、次のようにサフィックス付きのコマンドを見つける必要があります。ipythonport select

$ port select --list ipython
Available versions for ipython:
    ipython27
    ipython32 (active)
    none
$ which ipython
/opt/local/bin/ipython
$ which ipython-2.7
/opt/local/bin/ipython-2.7
$ port select --list pip
Warning: Unable to get active selected version: The specified group 'pip' does not exist.
Error: The 'list' command failed: The specified group 'pip' does not exist.
$ which pip
$ which pip-2.7
/opt/local/bin/pip-2.7

ところで、 Apple から OS X システムの Python が提供されるpipことも提供されることもipythonないため、バンドルされている OS X のデフォルトが何を意味するのかは明確ではありません。これらのバージョンをシステム Python 2.7 にインストールした可能性があります。その場合、デフォルトでは、 and/or が/usr/bin/python2.7and/or にインストールされているの/usr/local/binが表示され/Library/Python/2.7ます。

更新: MacPorts がオプションを提供するまで(上記の MacPorts の問題で要求されているように)、パスの先頭に Python フレームワークの bin ディレクトリを追加するように変更することで、MacPorts バージョンを実行port select pipできるはずです。pip.profile

export PATH=/opt/local/Library/Frameworks/Python.framework/Versions/Current/bin:/opt/local/bin:...

更新 2014-04: MacPorts はオプションを提供するようになったため、ハッキングport select pipを行う必要がなくなりました。PATH

$ sudo port select pip
Available versions for pip:
    none (active)
    pip27
    pip33
$ sudo port select pip pip27
Selecting 'pip27' for 'pip' succeeded. 'pip27' is now active.
$ hash
$ which pip
/opt/local/bin/pip
于 2012-09-24T00:46:59.810 に答える