2012-04-04 9 views
4

Python 2.6用のSphinx 1.1.3をインストールします。しかし、私はsudoの権利を持っていません。したがって、デフォルトの場所にインストールする代わりに、--prefixを使用して別の場所を設定したいと考えています。次のことを行う:Easy_installの--prefixオプションは、私のパッケージをインストールしようとするところで変更されません。

-bash-3.2$ easy_install Sphinx-1.1.3-py2.6.egg --prefix=/homes/ndeklein/python2.6/site-packages/ 

私を与える:

error: can't create or remove files in install directory 

The following error occurred while trying to add or remove files in the 
installation directory: 

[Errno 13] Permission denied: '/usr/lib/python2.4/site-packages/test-easy-install-18534.write-test' 

The installation directory you specified (via --install-dir, --prefix, or 
the distutils default setting) was: 

/usr/lib/python2.4/site-packages/ 

私は接頭辞を持つ何かを間違って入力していますか?また、代わりに使用できるもの(他のパッケージで使用していたもの):

python setup.py install --home=/homes/ndeklein/python2.6/site-packages/ 

setup.pyスクリプトが見つかりません。私はEGGにsetup.pyスクリプトがないと思っていますが、それは本当ですか?

答えて

4

このWebサイトは、非ルートのPythonインストールについて説明しています。それは

http://www.astropython.org/tutorials/user-rootsudo-free-installation-of-python-modules7/

はそれを少し引用すると...あなたの役に立つかもしれません:

ユーザーの設定ファイル、〜/ .pydistutils.cfgを、内部システム・パスを上書きしますビルドされたライブラリ(lib)、スクリプト(bin)、データ(share)をユーザが所有し指定したディレクトリにリダイレクトします。これらのディレクトリがどこにあるのかをPythonインストーラに伝えてください。

ユーザファイル、〜/ .pydistutils.cfg、かなり明白な構文を使用して、次の行を持っている:あなたはそこにおそらく存在しなければならないとあなたが置くべき指定どんなディレクトリ

もちろん
[install] 
install_scripts = ~/usr/bin 
install_data = ~/usr/share 
install_lib = ~/usr/lib/python2.4/site-packages 

、それらあなたのPYTHONPATHの前に:

export PYTHONPATH=~/usr/lib/python2.4/site-packages:${PYTHONPATH} 

それはまたに比べて(より現代的なPythonのインストールのように見えますあり

easy_install --prefix=~/.local ... 

:ユーザー固有のサイトのディレクトリにインストールされます

easy_install --user ... 

リンク)にあるものは~/.localディレクトリを使用することができるはずです。あなたがピップは、easy_installをのインストールを使用してみてください可能性があり

+0

がAppareantlyソースコードはsetup.pyを持っていなかったので、私はそれを使用するが、それは非常に便利なリンク私はあるbecasueあなたの答えを受け入れました。 –

+0

ええ、先日、私の同僚のためにこのリンクを見つけました...以前、私はrootを持っていなかったとき、私はpythonのプライベートバージョンをインストールしました(私は2.7とにかく...)が、これをブックマークしましたそれはとても有用と思われたからです。 – mgilson

+0

デッドリンク、答えに要約するといいですね... –

0

(ピップはeasy_installを、これらの日の上に推奨されます)

次に、あなただけの

を必要に応じて

pip install --user Sphinx 

はピップをインストールする方法についてhttp://www.pip-installer.org/en/latest/installing.htmlを参照してください使用することができますまた、virtualenvをインストールしてvirtualenvの中で作業することもできます(pipはすべてのパッケージをローカルサイトのパッケージフォルダにインストールします)。詳細はhttp://pypi.python.org/pypi/virtualenvを参照してください。

6

あなたはパッケージの前にオプションを指定する必要があるため、コマンドは次のようになります。

easy_install --prefix=/homes/ndeklein/python2.6/site-packages/ Sphinx-1.1.3-py2.6.egg 
+0

ちょうど私の問題を解決し、私の一日を作った! – Joe

関連する問題