Apacheとその依存関係のパッケージを作成しようとしています。
Sudo make package-recursive \
__MAKE_CONF=~/make.Apache22.conf \
PKGREPSOITORY=/usr/home/gvkv
すべてが正常に機能します。 Apacheとその依存関係はコンパイルおよびインストールされ、Apache22.tbz
はgvkv
にあります。問題は、依存関係パッケージがそれぞれのports/<package>
ディレクトリに構築されていることです。それらは約15個あり、find
とPerl
ワンライナーを使用して取得するのは簡単ですが、make
に実行するように指示する方法が必要です。依存関係パッケージが最終的にgvkv
になるような環境。
FreeBSDを使用する楽しみの一部は、portsサブシステムを扱うことです。 FreeBSDエコシステム内でのインストールとアップグレードは簡単ですが、他の方法では不十分ですが、make
構成ファイルまたは環境を介した変数の設定は、期待どおりに、または宣伝どおりに機能しないなど、多くの点で優れています。
それにもかかわらず、 SirDice は巧妙な小さなトリックで救助に来ました:
mount -t nullfs /directory/for/pkgs /usr/ports/packages
これは、環境変数の使用をバイパスし、必要な場所に宛先ディレクトリを設定できるため、非常に便利です。 (私のように)「build-jail」を使用して、さまざまなシステムや他のjailにインストールされるパッケージを作成している場合に非常に役立ちます。
/usr/ports/packages
ディレクトリはPACKAGES
が指す場所です(存在する場合)。これはおそらく別の場所を指すことができますが、私には機能しませんでした。 man
ページでは、単一のパッケージをビルドしている場合にのみ機能するPKGREPOSITORY
の設定が規定されています。
PKGREPOSITORYはパッケージに依存していることを読みました。
PACKAGESは/etc/make.conf
で設定できます。例えば:
DISTDIR= /opt/portbuild/distfiles
PACKAGES=/opt/portbuild/packages