awesomepkg
とsetup.py
のパッケージがあります。私は、ユーザがpip install awesomepkg
を実行したときにバイナリ実行可能ファイルawesometool
をパッケージ自体とともにコマンドラインにインストールしたいと思います。 awesometool
の異なるOSバージョンをコンパイルしました。これはというフォルダの中にsetup.py
という名前で存在します。Pythonパッケージセットアップスクリプトバイナリ実行可能ファイルをインストール
しかし、私はsetup.py
を設定する良い方法が見つかりません。私は、次のことをしようとしています
は
setup()
でscripts=[]
キーワードを使用します。残念ながら、 "実行可能ファイル"はPythonスクリプトでなければなりません。私は
os.system('bin/awesometool')
を使用してPythonスクリプトでバイナリをラップしようとします。また、wrapperスクリプトはpipによって他の場所にコピーされるため、失敗します。したがって、相対パスbin/awesometool
がどこにあるかはわかりません。もう1つの潜在的な解決策は、
data_files
キーワードです。ただし、何らかの理由でpython setup.py bdist_wheel
が実行されても、データファイルはsite_packages
インストールディレクトリにコピーされません。
参考:私はちょうどこの問題に自分自身を走ったhttps://docs.python.org/3/distutils/setupscript.html
の
scripts
キーワードにこのスクリプトを追加しました'。 – konstunn私はここで問題に遭遇しました。バイナリファイルの所有権のために 'Permission denied'というエラーが出ます。どうすればこの問題に取り組むことができますか? – konstunn