スポンサーリンク

C89(1) FreeBSD 一般コマンドマニュアル C89(1)

名称

c89 − POSIX.2 対応 C 言語コンパイラ

書式

c89 [−c] [−D name[=value]] ... [−E] [−g] [−I directory ...] [−L directory ...] [−o outfile] [−O] [−s] [−U name ...] operand ...

解説

これは IEEE Std 1003.2 (‘‘POSIX.2’’) 標準にて要求されている、C 言語コンパ イラの名称です。

c89 コンパイラは以下のオプションを受け付けます:

       −c

コンパイル時にリンクエディットフェーズを実行しません。生成された オブジェクトファイルを一切削除しません。

−D name[=value]
C 言語の #define ディレクティブ(前処理指令)で指定したかのように名 前を定義します。 ‘‘=value’’ が与えられない場合、値 1 が使用されま す。 IEEE Std 1003.2 (‘‘POSIX.2’’) に指定されているように変換する ためには、ソース中または本オプションを使用して _POSIX_SOURCE を定 義する必要があります。 −D オプションは −U オプションより低い優先 度を持ちます。すなわち name−U−D の両方で使用された場合、 オプションの順序によらず、 name は未定義になります。 −D オプショ ンは複数回指定可能です。

−E
全プリプロセッサディレクティブを展開し、 C 言語ソースファイルを標 準出力へコピーします。コンパイルは行いません。

−g
オブジェクトや実行ファイル中にシンボル情報を生成します。

−I directory
絶対パス名ではないヘッダを検索するアルゴリズムを、通常の場所を検 索する前に directory で指定されるディレクトリを探すという方法に変 更します。ダブルクォート ("") で括られた名前のヘッダは、 #include 行を指定したファイルのディレクトリ、次に −I オプションで指定した ディレクトリ、最後に通常の場所で探します。アングルブラケット (<>) で括られた名前のヘッダは、 −I オプションで指定したディレクトリと 通常の場所のみで探します。 −I オプションで指定したディレクトリは 指定した順番で探します。 −I オプションは複数回指定可能です。

−L directory
−l
で指定されるライブラリを検索するアルゴリズムを、通常の場所を検 索する前に directory で指定されるディレクトリを探すという方法に変 更します。 −L オプションで指定したディレクトリは指定した順番で探 します。 −L は複数回指定可能です。

−o outfile
パス名 outfile をデフォルトの a.out の代りに使用し、実行可能ファ イルを生成します。

−O
コンパイル時に最適化を行います。

−s
オブジェクトや実行ファイルを生成する時、実行に不要な、シンボルお よびその他の情報を取り除きます (ストリップします)。

−U name
name
の初期定義を取り除きます。 −U オプションは複数回指定可能で す。

オペランドは、パス名、もしくは −l ライブラリの形式です。パス名オペランド が少なくとも一つは指定されなければなりません。サポートされているオペラン ドの形式を以下に示します:

file.c
C 言語ソースファイルであり、コンパイルされます。場合に よってはリンクされます。 −c オプション使用時には、オペ ランドはこの形式でなければなりません。

file.a
オブジェクトファイルのライブラリであり、 ar(1) によって 生成され、直接リンクエディタに渡されます。

file.o
オブジェクトファイルであり、 c89 −c によって生成され、 直接リンクエディタに渡されます。

−l library
liblibrary.a
という名前のライブラリを探します。ライブラ リの名前が出てきた時点でそのライブラリ内部が検索される ので、 −l オペランドの位置は重要です。

関連項目

ar(1), cc(1)

規格

c89 コマンドは IEEE Std 1003.2 (‘‘POSIX.2’’) に準拠していると確信しており ます。

FreeBSD 10.0 September 17, 1997 FreeBSD 10.0

スポンサーリンク