setuptoolsのがインストールされていない場合はどう?
-
13-09-2019 - |
質問
私はちょうど私のプロジェクトのためのsetup.py
ファイルを書くの芸術を学んでいます。私はdistutilsのよりも優れていることが想定されsetuptools
、話の多くがあります参照してください。そこ私は理解できないことにかかわらず、一つのことだ、と私はそれが私がこのことについて読んだ任意のチュートリアルで対処表示されませんでした:setuptoolsの場合はインストールされていませんか?私はそれが標準ライブラリの一部ではありません理解して、それでは、どのようにあなたのプログラムをインストールしたい人は、それがインストールされていると仮定することができますか?
解決
あなたはそれがインストールされています仮定することはできません。それを回避する方法がありますが、あなたはdistutilsのにフォールバック(しかし、なぜ最初の場所でsetuptoolsのを持っている)、またはあなたがsetup.pyでsetuptoolsのをインストールすることができます(私はそれが悪だと思う)ことができます。
あなたがそれを必要とする場合にのみ、setuptoolsのに使用します。
それはdistrubute対setuptoolsのためになると、、彼らは互換性があり、他の上のいずれかを選択することは、主にユーザー次第です。 setup.pyは同一です。
他のヒント
ez_setup.py
のための実行可能ファイルをインストールします信じて - setuptoolsのでパッケージを配布するための標準的な方法は、自動的にsetuptoolsの自分自身をダウンロードしてインストールしますeasy_install
スクリプトが含まれています。あなたは、標準のsetuptoolsの/ easy_installを配布からこれを取得することができます。
私が今までのpythonのためにインストールほとんどのlibrarysでは、警告は「あなたがsetuptoolsのをインストールする必要があります」apears。あなたは同様にそれを行うことができます私は、ユーザーがそれをインターネットで検索する必要はありませんので、あなたがリンクを追加できると思います。
私は、WindowsのEXEファイルに書かれている多くのPythonスクリプトをコンパイルしsetuptoolsのを使用しています。しかし、それは常にコンパイル済みのEXEを実行しているコンピュータはセットアップツールがインストールされている必要がないこと(経験から)私の理解されています。
助け希望
私はそれはあなたが取り組んでいるユーザーの種類に依存だと思います。
彼らは単にユーザーではなくPythonプログラマであれば、あるいは、それらは最初は少し過ぎるかもしれませんsetuptoolsのを使用して、基本的なプログラマー、ある場合。これらのdistutilsに最適です。
クライアントの場合、私は間違いのdistutilsに固執するでしょう。
より多くの愛好家のプログラマのためのsetuptoolsのはいいと思います。
どういうわけか、それはまた、アップデートを配布する方法に依存し、どのくらいの頻度。たとえば、ユーザーがsetuptoolsのをブロックする彼らの会社によって厄介なプロキシ設定なしでインターネットへのアクセスを持っていますか? - 私たちは1を持っているし、それが設定し、それがすべてのワークステーション上で動作させるために余分なステップです。
。あなたはここからWindowsのEXEインストーラーとLinuxのRPMをダウンロードすることができます。
http://pypi.python.org/pypi/setuptoolsする
次に、あなたは場所にsetuptoolsのを持っていたら、あなたは、ダウンロードの両方にeasy_install
コマンドを使用して新しいパッケージをインストールすることができます。 easy_installを、また、自動的にダウンロードと依存関係をインストールするため、あなたは virtualenvのあなたが実際にそれを使用する前に。あなたはPythonがインストールシステムのデフォルトへのパッケージの束をインストールするかどうかを決めることができます。
はい、これはユーザーが彼らがそれを使用するためにインストールsetuptoolsのを持っている必要がありますことを意味します。もちろん、あなたは、setuptoolsのインストーラを取るそれらの名前を変更し、 NSIS のようにそれらをパッケージ化し、それを配布することができユーザーに。事実は、あなたが何かをインストールする必要があること、であるので、あなたは、インストーラでアプリケーションを入れたくない場合は、あなたの代わりにsetuptoolsのをパッケージ化することができます。