新しいクライアント(X のアプリケーション)を作る最も簡単な方法は、
Imakefile
がソースに付属していれば xmkmf
を使うことです。
``xmkmf
'' を実行して Makefile を作り、必要に応じて設定を確認し、
それから ``make
'' を実行します。オンラインマニュアルも追加インス
トールした場合には、必ず ``makewhatis /usr/X11R6/man
'' を実行
し、whatis.db
を更新してください。
cc
がコンパイル時に `Virtual memory exhausted
' とい
うメッセージを出すのを避けるため、データサイズとスタックサイズの上限を
増やしてください(csh
の場合は、`limit datasize 32M
'
と `limit stacksize 16M
' を入力します)。
注意: XFree86 2.1 以降、シンボル ``__386BSD__
'' は、コンパイ
ラによっても X の設定ファイル経由でも定義されないようになりました。
クライアントを *BSD システムに移植するときには、本当に BSD 特有のコー
ドに対してはシンボル ``BSD
'' を使ってください。このシンボルの
値を使って異なる BSD リリースを区別することができます。例えば、Net-2
以降のリリース専用のコードの場合には以下のように記述します。
#if (BSD >= 199103)このシンボルを確実に正しく定義するため、このシンボルが必要なソースでは
<sys/param.h>
をインクルードしてください。
XFree86 3.1.1 以降では *BSD システム用のシンボル CSRG_BASED が定
義されている点に注意してください。<sys/param.h>
のイン
クルードを保護するために、これを使うべきです。
i386 用に移植された BSD のうち特定のものの専用コードの場合には、
FreeBSD ならば __FreeBSD__
を、
NetBSD ならば __NetBSD__
を、
OpenBSD ならば __OpenBSD__
を、
386BSD ならば __386BSD__
を、
BSD/OS ならば __bsdi__
を使ってください。