distutilsのドキュメントでは、data_files のターゲット ディレクトリが相対パスの場合、ファイルはsys.prefix
. 私のシステム (Linux Mint) では、これは/usr
; ただし、data_files は代わりに にインストールされ/usr/local
ます。
クロスプラットフォームのサポートを失わずにこれを修正するにはどうすればよいですか?
これは Ubuntu / Linux ミント関連の問題であり、デフォルト/usr/local
では/usr
.
1) 他の人のプログラムをインストールしようとしていますか、または 2) setup.py を自分で作成しようとしていますか?
--prefix=/usr/local
1) の場合、呼び出し時に追加しpython setup.py
ますか? その場合、インストール プレフィックスは/usr/local
、データ ファイルが相対的にインストールされる になります。
sys.prefix
2) の場合は、 &の値を確認してくださいsys.exec_prefix
(または、setup.py の関連部分を投稿してください)。
最初に、セットアップ スクリプトの実行に使用する Python の sys.prefix を確認する必要があります。
次に、distutils 構成ファイルを確認します (1 つは Python 標準ライブラリ ディレクトリにある distutils.cfg です (うん、わかります)、もう 1 つは ~/.pydistutils.cfg で、最後は setup.py に続くオプションの setup.cfg です)。