[解決済み] どうすれば setuptools に PyPI にないパッケージをインストールさせることができますか?
質問
setuptoolsとvirtualenvを使い始めたところです。私のパッケージは最新のpython-gearmanを必要とし、それはGitHubからしか入手できません。PyPIにあるpython-gearmanのバージョンは古いものです。Githubのソースはsetuptoolsと互換性があり、つまりsetup.pyなどがあります。PyPIで探して古いものをインストールする代わりに、setuptoolsに新しいバージョンをダウンロードさせてインストールさせる方法はありますか?
参考までに、新しいpython-gearmanは http://github.com/mtai/python-gearman
解決方法は?
キーは、パッケージをダウンロードすることができる場所をeasy_installに伝えることです。 この特定のケースでは、それはURLで見つけることができます。 http://github.com/mtai/python-gearman/tarball/master . しかし、easy_install は URL を見ただけでは何を取得するのか分からないため、そのリンク自体は機能しません。
に変更することで http://github.com/mtai/python-gearman/tarball/master#egg=gearman-2.0.0beta 代わりに、easy_install はパッケージ名とそのバージョンを識別できるようになります。
最後のステップは、パッケージの dependency_links に URL を追加することです、例えば。
setup(
...
dependency_links = ['http://github.com/mtai/python-gearman/tarball/master#egg=gearman-2.0.0beta']
)
もし依存関係に "gearman>=2.0.0beta" を指定すれば、あなたのパッケージをインストールするときに easy_install はその URL からダウンロードできる "gearman 2.0.0beta" を発見して PyPI 上のものよりも喜んでそれを選びます。
(通常、このようなことは自分のPyPIページにダウンロード可能なソースへのリンクを貼ることで行われます。この場合、gearmanパッケージの作者が上記のようなリンクを貼っていれば、すでに設定されているはずです。 一般的に、人々は 'myproject-dev' で開発版をマークし、人々は 'myproject>=somever,==dev' という要件を使うので、もし somever 以上のパッケージがなければ easy_install はリリースをチェックアウトまたはダウンロードしようとします)。
を指定する必要があります。
--process-dependency-links
を使用する場合
pip
. なお、依存関係リンクの処理は非推奨となっており、将来のリリースで削除される予定です。
関連
-
Python Pillow Image.save jpg画像圧縮問題
-
[解決済み】「RuntimeError: dictionary changed size during iteration」エラーを回避する方法とは?
-
[解決済み] 関数デコレータを作成し、それらを連鎖させるには?
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] Pythonで辞書に新しいキーを追加するにはどうすればよいですか?
-
[解決済み] 割り当て後にリストが予期せず変更されました。その理由と防止策を教えてください。
-
[解決済み] Windowsにpipをインストールするにはどうしたらいいですか?
-
[解決済み] Python 3をvirtualenvで使う
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonのモジュール/パッケージの書き方は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
Pythonコードの可読性を向上させるツール「pycodestyle」の使い方を詳しく解説します
-
Pythonショートビデオクローラーチュートリアル
-
[解決済み】ilocが「IndexError: single positional indexer is out-of-bounds」を出す。
-
[解決済み】syntaxError: 'continue' がループ内で適切に使用されていない
-
[解決済み】Python: SyntaxError: キーワードは式になり得ない
-
[解決済み】ImportError: bs4という名前のモジュールがない(BeautifulSoup)
-
[解決済み】「OverflowError: Python int too large to convert to C long" on windows but not mac
-
[解決済み】cアンダースコア式`c_`は、具体的に何をするのですか?
-
[解決済み] git repoブランチからpip install