distutils
( )を使用して、(ローカルリポジトリから)Pythonパッケージをインストールできるようにしたいと思いsetup.py
ます。これには、別のローカルリポジトリからの別のパッケージが必要です。setup
コマンド
の適切なドキュメントが不足しているため(こことここsetup
でいくつかの例を見つけただけで、 -terms extras_require
と混同され、こことここinstall_require
でdependency_links
見つかりました)、これを処理する方法、つまりインストールを処理する方法を示す完全なファイルを持っている人はいますか?いくつかのSVNリポジトリで見つかったパッケージの場合、現在インストールしているメインパッケージでそれが必要な場合はどうでしょうか。setup.py
distutils
より詳細な説明:2つのローカルsvn(またはgit)リポジトリbasicmodule
とextendedmodule
。今、私はチェックアウトextendedmodule
して実行しますpython setup.py install
。このsetup.py
ファイルは、がextendedmodule
必要basicmodule
であることを認識しており、リポジトリから自動的にダウンロードしてインストールします(まだインストールされていない場合)。どうすればこれを解決できsetup.py
ますか?それとも、これを行うための別のより良い方法がありますか?
編集:フォローアップの質問
トムの回答に基づいて、私はsetup.py
次のように使用しようとしました。
from setuptools import setup
setup(
name = "extralibs",
version = "0.0.2",
description = ("Some extra libs."),
packages=['extralib'],
install_requires = "basiclib==1.9dev-r1234",
dependency_links = ["https://source.company.xy/svn/MainDir/SVNDir/basiclib/trunk@20479#egg=basiclib-1.9dev-r1234"]
)。
これを通常のユーザーとしてインストールしようとすると、次のエラーが発生します。
error: Can't download https://source.company.xy/svn/MainDir/SVNDir/basiclib/trunk@20479: 401 Authorization Required
しかしsvn
、まったく同じリンクで通常のチェックアウトを行うと、次のように機能します。
svn co https://source.company.xy/svn/MainDir/SVNDir/basiclib/trunk@20479
svnリポジトリの設定を変更せずにこれを解決する方法について何か提案はありますか?