スポンサーリンク

BUILD(7) FreeBSD 多方面の情報マニュアル BUILD(7)

名称

build − システムの構築方法についての情報

解説

FreeBSD システムおよびアプリケーションのソースコードは、異なる 3 つのディ レクトリに格納されています。通常は、 /usr/src, /usr/doc, /usr/ports で す。 /usr/src には ‘‘ベースシステム’’ のソースが含まれています。ベースシ ステムとは、システムを使える状態に構築し直すのに必要なものとして大雑把に 定義されています。 /usr/doc にはシステムドキュメントのソースが含まれてい ます。ただし、マニュアルページは除きます。 /usr/ports は、サードパーティ のアプリケーションを構築し、インストールするための一貫したインタフェース を提供しているツリーです。

これら 3 つのディレクトリそれぞれに格納されているものを構築しインストール するには、 make(1) コマンドを使用します。これら 3 つのディレクトリ、もし くはサブディレクトリ内のどこででも make(1) コマンドを実行すれば、そのディ レクトリ配下のサブディレクトリ内すべてで同一のコマンドを発行したのと同じ 効果があります。ターゲットを指定しなければ、make コマンドを実行したディレ クトリ内にあるものを単純に構築します。次のリストはその他のターゲットの名 称およびアクションを示したものです:

       clean

構築プロセス中で生成されたファイルをすべて消去します。

install
このディレクトリに対する構築結果をインストールします。

update
更新されたソースを /etc/make.conf で設定されている通りに取得 します。

その他の /usr/src での make ターゲットは次のものがあります:

buildworld
カーネル以外のすべてのものを再構築し、 /etc ディレクトリ内の ファイルを設定してリリースします。

installworld
buildworld
で構築したものすべてをインストールします。

buildkernel
カーネルとカーネルモジュールを再構築します。

installkernel
カーネルとカーネルモジュールをインストールします。

reinstallkernel
カーネルとカーネルモジュールを再インストールします。

kernel
buildkernel
installkernel を続けたものと同義です。

ports の構築プロセスに関する情報については、 ports(7) を参照してくださ い。

環境変数

       TARGET_ARCH

ターゲットとなるマシンプロセッサアーキテクチャ。この環境変数 は ‘‘uname −p’’ の出力と同じものです。異なるアーキテクチャ用 にクロスビルドするにはこの環境変数を設定してください。

TARGET
ターゲットとなるハードウェアプラットフォーム。この環境変数は ‘‘uname −m’’ の出力と同じものです。ターゲットアーキテクチャ をクロスビルドするのに必要な変数です。例えば、PC98 マシン用 にクロスビルドを行うには TARGET_ARCH=i386 と TARGET=pc98 が 必要です。

NO_WERROR
定義されている場合、警告が出ても構築が停止することはありませ ん。 makefile が別のことを言ってきても停止しません。

DESTDIR
生成したバイナリをインストールするディレクトリ階層を指しま す。

関連ファイル

       /etc/make.conf

/usr/doc/Makefile
/usr/doc/share/mk/doc.project.mk
/usr/ports/Mk/bsd.port.mk
/usr/ports/Mk/bsd.sites.mk
/usr/share/examples/etc/make.conf
/usr/src/Makefile
/usr/src/Makefile.inc1

使用例

最新のソースからシステムを更新するのに ‘‘よい’’ とされている方法に関して は、 src/UPDATINGCOMMON ITEMS セクションをぜひ参照してください。

i386 のホストで Alpha アーキテクチャ用のシステムをクロスビルドするには、 次のコマンドシーケンスを使用できます:

      cd /usr/src
      make TARGET_ARCH=alpha buildworld
      make TARGET_ARCH=alpha DESTDIR=/clients/axp installworld

関連項目

cc(1), install(1), make(1), make.conf(5), ports(7), release(7), config(8), mergemaster(8), reboot(8), shutdown(8)

作者

Mike W. Meyer ⟨mwm@mired.org⟩ 。

FreeBSD 10.0 February 23, 2005 FreeBSD 10.0

スポンサーリンク