xreaad
[ FrontPage | リロード ] [ 新規 | 一覧 | 検索 | ヘルプ | 更新履歴 ]
[ 編集 | 差分 | ソース ]

駄文 > cl(VC6)オプション - C/C++ COMPILER OPTIONS

目次

C/C++ COMPILER OPTIONS

[編集]

VC6付属のC/C++コンパイラ、clのメモ

$ cl /?

オプションのスラッシュはハイフンにすることが可能

最適化オプション

[編集]

/O1 コードを最小化します。
/O2 コードを最速化します。
/Oa エイリアスを使用しないと仮定します。
/Ob<n> 関数のインライン展開を制御します。(n=0、1、2)
/Od 最適化を無効にします。
/Og グローバル最適化を使用します。
/Oi 組み込み関数を生成します。
/Op[-] 浮動小数点演算の一貫性を向上させます。
/Os 実行可能ファイルで、サイズの小ささを優先させます。
/Ot 実行可能ファイルで、実行速度を優先させます。
/Ow 関数呼び出しでエイリアスを使用すると仮定します。
/Ox 最大限の最適化(/Ogityb1 /Gs)
/Oy[-] フレーム ポインタを省きます。

コード生成オプション

[編集]

/G3 80386プロセッサ用にコードを最適化します。
/G4 80486プロセッサ用にコードを最適化します。
/G5 Pentium用にコードを最適化します。
/G6 Pentium Pro、Pentium II、および Pentium IIIプロセッサ用にコードを最適化します。
/GB optimize for blended model (default)
/Gd __cdecl呼び出し規約を使用します。
/Gr __fastcall呼び出し規約を使用します。
/Gz __stdcall呼び出し規約を使用します。
/GA Windowsアプリケーション用に最適化します。
/GD Windows DLL用に最適化します。
/Gf 文字列プールを有効にします。
/GF 読み取り専用の文字列プールを有効にします。
/GZ ランタイム エラー チェックを有効にします。
/Gy separate functions for linker
/Ge force stack checking for all funcs
/Gs[num] disable stack checking calls
/Gh enable hook function call
/GR[-] ランタイム型情報を有効にします。
/GX[-] 同期例外処理を有効にします。(/EHsc と同じ)
/Gi[-] enable incremental compilation
/Gm[-] 簡易リビルドを有効にします。
/EHs 同期例外処理を有効にします。
/EHa 非同期例外処理を有効にします。
/EHc extern "C"を指定している関数はnothrowを標準とします。
/QIfdiv[-] enable Pentium FDIV fix
/QI0f[-] enable Pentium 0x0f fix

出力ファイルオプション

[編集]

/Fa[file] アセンブリファイル名を設定します。
/FA[sc] アセンブリファイルを作成します。
/Fd[file] プログラムデータベースファイル(.PDB)の名前を変更します。
/Fe<file> 実行可能ファイルの名前を変更します。
/Fm[file] マップファイルを作成します。
/Fo<file> オブジェクトファイルを作成します。
/Fp<file> プリコンパイル済みヘッダーファイル(.PCH)の名前を指定します。
/Fr[file] ブラウザファイル(.SBR)を生成します。
/FR[file] 詳細なブラウザファイル(.SBR)を生成します。

プリプロセッサオプション

[編集]

/C プリプロセス時にコメントを保持します。
/D<name>{=|#}<text> 定数とマクロを定義します。
/E プリプロセッサ出力を標準出力にコピーします。
/EP プリプロセッサ出力を標準出力にコピーします。行番号は出力されません。
/P プリプロセッサ出力をファイルに書き込みます。
/FI<file> 指定したインクルードファイルをプリプロセスします。
/U<name> 定義済みマクロを削除します。
/u すべての定義済みマクロを削除します。
/I<dir> インクルードファイルのパスを指定します。
/X 標準のインクルードディレクトリを無視します。

言語オプション

[編集]

/Zi enable debugging information
/ZI enable Edit and Continue debug info
/Z7 enable old-style debug info
/Zd line number debugging info only
/Zp[n] pack structs on n-byte boundary
/Za disable extensions (implies /Op)
/Ze enable extensions (default)
/Zl omit default library name in .OBJ
/Zg generate function prototypes
/Zs syntax check only
/vd{0|1} disable/enable vtordisp
/vm<x> type of pointers to members
/noBool disable "bool" keyword

その他のオプション

[編集]

/?, /help コンパイラ オプションのリストを出力します。
/c リンクを行わないでコンパイルします。
/H<num> 外部名(パブリック名)の長さを制限します。
/J 既定のchar型を変更します。
/nologo 著作権情報を表示しません。
/Tc<source file> Cのソースファイルとしてコンパイルします。
/Tp<source file> C++のソースファイルとしてコンパイルします。
/TC 全てのファイルをCのソースファイルとしてコンパイルします。
/TP てのファイルをC++のソースファイルとしてコンパイルします。
/V<string> バージョン文字列を設定します。
/w すべての警告を無効にします。
/W<n> 警告レベルを設定します。(default n=1)
/WX すべての警告をエラーとして扱います。
/Yc[file] プリコンパイル済みヘッダーファイル(.PCH)を作成します。
/Yd すべてのオブジェクトファイル(.OBJ)に、詳細なデバッグ情報を取り込みます。
/Yu[file] ビルド時にプリコンパイル済みヘッダーファイル(.PCH)を使用します。
/YX[file] プリコンパイル済みヘッダー(.PCH)を自動化します。
/Zm<n> max memory alloc (% of default)

リンカオプション

[編集]

/MD MSVCRT.libを使用して、マルチスレッドDLLを作成します。
/ML LIBC.libを使用して、シングルスレッド実行可能ファイルを作成します。
/MT LIBCMT.libを使用して、マルチスレッド実行可能ファイルを作成します。
/LD ダイナミックリンクライブラリを作成します。
/LDd デバッグバージョンのダイナミックリンクライブラリを作成します。
/MDd MSVCRTD.libを使用して、デバッグバージョンのマルチスレッドDLLを作成します。
/MLd LIBCD.libを使用して、デバッグバージョンのシングルスレッド実行可能ファイルをコンパイルして作成します。
/MTd LIBCMTD.libを使用して、デバッグバージョンのマルチスレッド実行可能ファイルをコンパイルして作成します。
/F<num> スタックサイズを設定します。
/link [linker options and libraries] このオプション以降をLINKに渡します。

通常リンカ(link)はハイフンでオプションを指定することは出来ない。(例: /nologoは可、-nologoは不可)
ただし/linkオプションで指定する場合はハイフンが使用できる。


Valid XHTML 1.1
Creative Commons License This work is licensed under a Creative Commons License