X11R6 など、共通デスクトップ環境が依存しているライブラリは、プラットフォームが異なれば別の場所にインストールされていることがよくあります。これを解決するには、プラットフォーム固有のリファレンスを取り込むか、各プラットフォーム別の makefile を書いてください。
また、make プログラムの機能はプラットフォームによって異なります。アプリケーションに対して makefile を 1 つだけしか書かないのであれば、プログラムの移動先であるプラットフォームが使用している共通の make 機能を使用してください。プラットフォーム固有の make 機能は使用しないでください。
デスクトップと統合するのに、共通デスクトップ環境では定義された定数 (-D パラメータなど) を追加する必要はありません。POSIX などの標準に従う場合は、標準固有のフラグを追加してコンパイルする必要があります。特殊なコンパイラ要件があるかどうかについては、標準のドキュメントを参照してください。
/usr/dt/examples の各サブディレクトリには、異なるプラットフォーム用の makefile の例が入っています。これらの makefile はシステムの相違点を考慮しています。特に、一般的な makefile の例については、/usr/dt/examples/dtdts ディレクトリを参照してください。
アプリケーションがデスクトップの include ファイルを検索できるようにするには、次の行を各 makefile のコンパイル行に追加してください。
-I/usr/dt/include
アプリケーションがデスクトップ・ライブラリを参照できるようにするには、次の行を各 makefile のリンク行に追加してください。
-L/usr/dt/lib -l<libname1> -l<libname2>...
libname1、libname2 はアプリケーションが参照するライブラリ名です。デスクトップ・ライブラリ名は必要なだけ指定できます。次に例を示します。
-L/usr/dt/lib -lDtSvc -ltt -lXm
このように指定すると、アプリケーションはデスクトップ・サービス、ToolTalk メッセージ・システム、Motif 1.2 ライブラリを参照します。