次: , 前: Libtool paradigm, 上: Top


3 libtoolを使用する

libtoolが人生をより単純にする方法が分かるまで,独自のパッケージで libtoolを使用することを話す意味はありません.この章の例は,標準的なラ イブラリのビルド処理と,libtoolの処理を,二つの異なるプラットフォーム で比較することで,主な特徴を紹介します.

`a23'
スタティックライブラリのみのUltrix 4.2プラットフォーム.
`burger'
共有ライブラリを持つ,NetBSD/i386 1.2プラットフォーム.

独自のプラットフォームの例をこれに続けることが可能で,それは,libtool でインストールされた,前もってコンフィグレーションされているlibtoolス クリプトを使用します(see Configuring).

以下の例のソースファイルは,libtool配布物のdemoサブディレクトリ から持ってきています.ファイルfoo.chello.cからライブラ リlibhelloをビルドしていると仮定してください.

foo.cソースファイルがcos数学ライブラリ関数を使用していて, それは通常,Cライブラリではなく単独の数学ライブラリで見つかることに注 意してください(see Trigonometric Functions).そのため,foo.ofoo.lo を実行形式やライブラリにリンクするときは,常にリンク行の 最後に-lm を加える必要があります(see Inter-library dependencies).

同じ規則は,標準Cライブラリに無い関数を使用するとき,常に当てはまりま す...これらのオブジェクトに対しリンクするときは,適切な -lnameフラグをリンク行の終りに加える必要があります.

ライブラリをビルドした後,libhelloに対してmain.oをリンク することでプログラムを作成したいと思います.