2

既に 2.6、2.7.10、および 3.4.0 を持っているにもかかわらず、Scrapy インストール ガイドに従って、python (2.7.11) の新しいコピーをインストールしています。これらのエラーが発生する最終ステップまで、インストールは正常に行われていました

==> Pouring python-2.7.11.el_capitan.bottle.2.tar.gz
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/2to3
Target /usr/local/bin/2to3
already exists. You may want to remove it:
  rm '/usr/local/bin/2to3'

To force the link and overwrite all conflicting files:
  brew link --overwrite python

To list all files that would be deleted:
  brew link --overwrite --dry-run python

Possible conflicting files are:
/usr/local/bin/2to3 -> /Library/Frameworks/Python.framework/Versions/3.4/bin/2to3
Error: Permission denied - /usr/local/Frameworks

さらに

ls -l /usr/local/Frameworks
ls: /usr/local/Frameworks: No such file or directory

ls -l /usr/local/bin/2to3
lrwxr-xr-x  1 root  wheel  66  7 Apr  2014 /usr/local/bin/2to3 -> ../../../Library/Frameworks/Python.framework/Versions/3.4/bin/2to3

私の質問:

sudo brew install python1)代わりにやるべきだったbrew install python?うまくいけば、2.7.11 をアンインストールして最初からやり直す必要はありません。

2)彼らが提案する2つのステップを実行するrm '/usr/local/bin/2to3'brew link --overwrite python、Scrapy以外の目的でpython 3.4.0を実行できますか?おそらく、これらをsudo?で行う必要があります。

3) #2 を実行した場合、アクセス許可の問題は自然に/usr/local/Frameworks解決しますか、それとも何か他のことをする必要がありますか?

ファローアップ:

virtualenv をセットアップするという提案は、おそらく良いものです。しかし、おそらく最初にインストールを完了する必要があると思います。

2to3を削除しました。私もsudoで実行しようとしましたbrew link --overwrite pythonが、sudo brew link msgを臆病に拒否して戻ってきたので、先に進んでsudoなしで実行しました。

しかし、醸造リンクはまだ許可に失敗しました

brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.11... Error: Permission denied - /usr/local/Frameworks

でも

ls -l /usr/local/Frameworks
ls: /usr/local/Frameworks: No such file or directory

さらに、 /usr/local/bin には、既存の 3.4.0 (ルートが所有するリンク) と新しい 2.7.11 (私が所有するリンク) への多くの python 関連リンクがあります。

それで、私は今何をしますか?どうもありがとう。

4

2 に答える 2

3

さまざまなフォーラムからの多数の投稿に基づいて、最も推奨されるベスト プラクティスは、homebrew に必要なすべてのバージョンの python をインストールし、OSX にバンドルされている python をそのまま (および未使用) にして、他のすべてのバージョンを削除することです。

thisによると、homebrew は共存する 2.7 & 3.x python を処理できるはずです。そのため、このアドバイスに従って、以前に自分でインストールした 3.4 を python.org から直接削除しました。

さらに、提供された推奨事項に従いましたbrew doctor。これは、非自作の python を削除する方法に関する上記のリンクに記載されている手順と非常によく似ていました。続いて

brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.11... 5 symlinks created

brew doctor
Your system is ready to brew.

ということで、ようやくhomebrewでインストールした2.7.11が完成したようです。

homebrew を使用して最新の 3.x バージョンをインストールし、この投稿を更新します。それが成功したら、さらに virtualenv をセットアップして Scrapy をインストールします。

ファローアップ:

brew install python3Python 3.5.1 が正常にインストールされました

pip install virtualenvvirtualenv 15.0.1 が正常にインストールされました

virtualenv -p /usr/local/bin/python2.7 Scrapy2.7を使用して「Scrapy」仮想環境を正常にセットアップしました

source Scrapy/bin/activate「Scrapy」仮想環境を起動しました

pip install lxmllxml 3.6.0 が正常にインストールされました

pip install ScrapyScrapy 1.1.0 が正常にインストールされました

pip freeze > Scrapy/requirements.txt生成された依存関係のリスト

deactivate「Scrapy」仮想環境を終了しました

明日、Scrapy チュートリアルを試して、これらすべてが実際に機能するかどうかを確認します

于 2016-05-28T03:45:08.167 に答える