FreeBSDでは、サードパーティのソフトウェアは/usr/local
にインストールされています。 /usr/games
ディレクトリが存在する場合は、そのディレクトリには触れないでください。
OS Xでは、ソフトウェアアプリケーションがバンドルされて/Applications
フォルダにインストールされますが、テキストベースゲーム(これは私が想定している)はおそらくそこには意味がないと思われます。 MacPortsを使用してソフトウェアをインストールすると、/opt/local
になる傾向があります。 Brewを使用してソフトウェアをインストールすると、MacPortsとの競合を避けるため、/usr/local
になる傾向があります。しかし、/*/local/
の階層の「規則」は/Applications
のものとは異なります。
ほとんどのLinuxディストリビューションでは、ソフトウェアは以前にインストールされたソフトウェアと競合しない限り、どこにでもインストールできます。ガイドラインはありますが、私が知る限り、それらの遵守は控えています。
これらの間の大きな共通点は、パッケージングシステムが関与していることです。あなたは通常、あなたが梱包リストでやっていることを追跡している限り、好きなことを何でもすることができます。私のアドバイスは、あなたの可能な限りシンプルでありながらなど柔軟なインストール維持すること、および聞かせ
(MacPortsの中port contents {portname}
、FreeBSDの中pkg info -l {portname}
などAPTベースのシステム、RPMベースのシステムでrpm -ql {pkgname}
、中dpkg-query -L {pkgname}
を参照してください)地方の包装システムは、物事がどこに行くかについて独自のルールを適用します。一部のオペレーティングシステムでゲームを別の場所に置く必要があると判断したため、ソフトウェアを変更する必要はありません。
PREFIX?=/usr/local
のように接頭辞を設定すると、囲むスクリプトやMakefileによって簡単に上書きできるようになります。 install
コマンドのさまざまなバリエーションをチェックして、サポートするプラットフォームに共通の基本的なオプションセットがあるかどうかを確認し、存在しない場合はcp
のファイルをコピーするか、独自のinstall
スクリプトを一部として組み込みますあなたのソフトウェアの。
AFAIK、/ usr/gamesはまだFreeBSDのゲームの場ですが、オプションのインストールです。誰もがそれを望んでいるわけではありません。つまり、PostgreSQLがFreeBSDの/ usr/local/pgsqlに入っているように、$ prefix/$ packagename /にインストールする先行技術があります。システムに追加するファイルがローカルのパッケージ管理システムに記録されている限り、バイナリに$ prefix/bin、ライブラリに$ prefix/lib、設定に$ prefixなどを自由に使用できます**。パッケージングでうまく動作しないソフトウェアは、私が維持しているシステムにインストールされることはありません。期間。 – ghoti
また、これはSOの話題のようには聞こえません。 IRCチャンネルで、サポートしたいと思っているさまざまなオペレーティングシステムについて尋ねることをお勧めします。まったく異なるプラットフォームが異なる好みを持つ可能性が高いです。 – ghoti
@ghotiいいえ、そうではありません。たとえば、私のLinuxシステムでは、nethackは '/ usr/games/nethack'にインストールされますが、FreeBSDではportsは' games/usr/local/bin/nethack'にインストールされるようにパッチされています。 – fuz