問題タブ [distutils]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - これは最もpythonicです:パッケージマネージャー(macports、apt)またはpip / easy_install/setuptoolsを介してpythonモジュールをインストールします
通常、私はパッケージマネージャーを介してインストールする傾向があります。しかし、私がたくさんのperlをプログラムしたとき、私はCPAN、新しいバージョンなどを使用しました。
一般的に、私はパッケージマネージャーを介してシステムのものをインストールし、独自のパッケージマネージャー(gem / easy_install | pip / cpan)を介して言語のものをインストールしていました。
現在、主にPythonを使用していますが、ベストプラクティスは何ですか?
python - setup.pyのビルドディレクトリをクリーニングしています
setup.py
ビルドディレクトリを事前削除と事後削除するにはどうすればよいですか?
python - setup.pyにPython以外のファイルを含める
setup.py
コードの一部ではないファイルを含めるにはどうすればよいですか?(具体的には、ライセンスファイルですが、他のファイルでもかまいません。)
python - setup.py で Python 以外のファイルを含める
setup.py
コードの一部ではないファイルをインクルードするにはどうすればよいですか? (具体的には、これはライセンス ファイルですが、他のものでもかまいません。)
ファイルの場所を制御できるようにしたい。元のソース フォルダーでは、ファイルはパッケージのルートにあります。(つまり、最上位の と同じレベル__init__.py
です。) オペレーティング システムに関係なく、パッケージがインストールされたときに正確にそこにとどまることを望みます。それ、どうやったら出来るの?
python - `setup.py sdist` はどのように機能しますか?
を使用してプロジェクトのソース配布を作成しようとしていsetup.py sdist
ます。私はすでにsetup.py
インストールできる機能を持っています。しかし、実行すると、フォルダー内のsdist
別のフォルダー、興味のないファイル、およびプロジェクトではなく、2 つのテキスト ファイルを含む zip ファイルだけが得られます。my_project
my_project
MANIFEST
私は何を間違っていますか?ドキュメントはどこにありますsdist
か?
アップデート:
これが私のものsetup.py
です:
python - この「setup.py」の何が問題になっていますか?
私は物事を正しくsetup.py
行うことに問題を抱えてきました。sdist
ここまで煮詰めました。次のディレクトリ構造があります。
そして、ここに私が持っているものがありますsetup.py
:
('aaa'
ものは単なるプレースホルダーです。)
とにかく、実行すると問題なく動作しますsetup.py install
が、実行しようとするsetup.py sdist
と、いくつかの奇妙なことが起こります。
MANIFEST
ファイルが作成されます。フォルダーのコピーが既存のフォルダー内
my_package
に作成されます (ただし、いくつかのセットアップ関連ファイルが欠落していると思います)。my_package
フォルダーが作成され、その
dist
中にzipファイルがあり、その中にパッケージ名のフォルダーがありますが、そのフォルダー内には、私が望んでいたようなパッケージ全体ではなく、2つのファイルsetup.py
とPKG-INFO
.
私は何を間違っていますか?どうすれば仕事をすることができsdist
ますか?
python - Django (または任意の Python モジュール) のインストール場所のカスタマイズ
Django をカスタムの場所にインストールしたいのですが、distutils のドキュメントを読みましたが、次のような方法でホーム ディレクトリにインストールできるはずです (解凍された Django tarball から実行した場合)。
ただし、これを実行するたびに、ホームパスと個別の要素パスを連結していないように見えるため、単純に終了します
p>展開された tar ボール ディレクトリ。つまり、モジュール、スクリプトなどを、指定された --home に対する相対パスではなく、ローカル ディレクトリへの単純な相対パスとして扱っているようです。
--prefix を使用してルートを設定し、setup.cfg を使用してみましたが、何も機能しないようです。--prefix および --home は、他のオーバーライドなしで単独で機能しますが、 --install-xxx オーバーライドと一緒に使用すると機能しません。
私はおそらく何か愚かなことをしている、またはドキュメントが間違っているか、バグです。どんな助けも大いに義務付けられています。
python - Python の distutils は .S (アセンブリ) をコンパイルできますか?
オプションの .S (アセンブラー) ファイルを 1 つ持つ小さな C ライブラリをバンドルし、コンパイルし、静的にリンクする小さな Python 拡張機能を作成しました。Distutils の Extension() は、デフォルトでは .S を認識しません。そのファイルをコンパイルする良い方法はありますか、それとも単にシェルアウトする必要がありmake
ますか? 現在、少し遅いライブラリ用にのみ C コードをコンパイルしています。
python - setuptoolsがインストールされていない場合はどうなりますか?
私はsetup.py
自分のプロジェクトのためにファイルを書く技術を学んでいます。setuptools
distutilsよりも優れていると思われるについての話がたくさんあるようです。理解できないことが1つあります。これについて読んだチュートリアルでは、それが取り上げられていませんでした。setuptoolsがインストールされていない場合はどうなりますか?これは標準ライブラリの一部ではないことを理解していますが、プログラムをインストールしたい人がそれをインストールするとどのように想定できますか?
python - Python setup.py スクリプトでフラグを gcc に渡す方法は?
CoreFoundation フレームワーク (とりわけ) を必要とする Python 拡張機能を C で作成しています。これは次のようにコンパイルできます:
(「-framework」は Apple 専用の gcc 拡張機能ですが、とにかく特定のフレームワークを使用しているので問題ありません)
setup.py にこのフラグを gcc に渡すように指示するにはどうすればよいですか?
私はこれを試しましたが、うまくいかないようです (コンパイルはできますが、実行しようとすると未定義のシンボルが表示されます):
編集:
これはうまくいくようです: