スポンサーリンク

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

名称

c99 − 標準 C 言語コンパイラ

書式

c99 [−cEgs] [−D name[=value]] ... [−I directory ...] [−L directory ...] [−o outfile] [−O optlevel] [−U name ...] operand ...

解説

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

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

       −c

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

−D name[=value]
C 言語の #define ディレクティブ(前処理指令)で指定したかのように名 前を定義します。 ‘‘=value’’ が与えられない場合、値 1 が使用されま す。 IEEE Std 1003.1-2001 (‘‘POSIX.1’’) に指定されているように変 換するためには、ソース中または本オプションを使用して _POSIX_C_SOURCE=200112L を定義する必要があります。 −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 optlevel
optlevel
が 0 の場合、最適化を抑制します。そうでない場合、指定し たレベルの最適化を有効化します。

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

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

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

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

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

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

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

関連項目

ar(1), c89(1), cc(1)

規格

c99 ユーティリティインタフェースは IEEE Std 1003.1-2001 (‘‘POSIX.1’’) に 適合しています。これは GCC を包むものですので、 GCC が実際に実装している C99 機能に限定されています。 http://gcc.gnu.org/gcc-3.3/c99status.html を 参照してください。

FreeBSD 10.0 October 7, 2002 FreeBSD 10.0

スポンサーリンク