コンパイラーのコマンド行オプション

本節では、XL C/C++ コマンド行オプションをリストして説明します。

リストした任意のオプションの詳細を参照するには、そのオプションの詳しい説明ページを参照してください。これらのページでは、以下を含むコンパイラー・オプションについてそれぞれ説明します。

関連概念

コンパイラー・オプション

関連タスク

コマンド行におけるコンパイラー・オプションの指定
プログラム・ソース・ファイル内のコンパイラー・オプションの指定
構成ファイル内のコンパイラー・オプションの指定
アーキテクチャー固有の (32 ビットまた は 64 ビットの) コンパイル用コンパイラー・オプションの指定
矛盾するコンパイラー・オプションの解決

関連参照

汎用プラグマ
並列処理を制御するプラグマ

コマンド行コンパイラー・オプションの要約


オプション名 デフォルト 説明
+ (正符号) -flag - C++ に適用 任意のファイル filename.nnn を C++ 言語ファイルとしてコンパイルする。ここで、nnn は、.o.a、および .s 以外の任意のサフィックスです。
# (ポンド記号) -flag - 何も行わずにコンパイルをトレースする。
32、64 -qopt 32 32 ビットまたは 64 ビットのコンパイラー・モードを選択する。
abi_version -qopt abi_version を参照。 C++ に適用 別のレベルの GNU C++ とのバイナリー互換性のための C++ ABI バージョンを指定する。
aggrcopy -qopt aggrcopy を参照。 構造体および共用体の破壊コピー操作を使用可能にする。
alias -qopt alias を参照。 最適化中に使用する型ベースの別名割り当てを指定する。
align -qopt linuxppc コンパイラーがファイルのコンパイルに使用する集合体の位置合わせ規則を指定する。
alloca -qopt - C に適用 #pragma alloca ディレクティブがソース・コードであるかのように、関数 alloca の呼び出しにインライン・コードを使用する。
altivec -qopt noaltivec AltiVec(TM) データ型に対するコンパイラー・サポートを使用可能にする。
arch -qopt arch=ppcv 実行可能プログラムを実行するアーキテクチャーを指定する。
asm -qopt -qasm=gcc asm ステートメントの解釈および以降のコード生成を制御する。
attr -qopt noattr 全 ID の属性リストを含むコンパイラー・リストを生成する。
B -flag - コンパイラー、アセンブラー、リンケージ・エディター、およびプリプロセッサーに対する代替パス名を判別する。
bigdata -qopt nobigdata 32 ビット・モードで、初期化データを 16 MB より大きいサイズにすることができる。
bitfields -qopt bitfields=signed ビット・フィールドを符号付きとするかどうかを指定する。
C -flag - プリプロセスされた出力にコメントを保持する。
c -flag - コンパイラーに、コンパイラーのみにソース・ファイルを渡すように指示する。
c_stdinc -qopt - C のみ C ヘッダーの標準検索ロケーションを変更する。
cache -qopt - 特定の実行マシンのキャッシュ構成を指定する。
chars -qopt chars=unsigned コンパイラーに、 char 型の変数をすべて signed または unsigned のいずれかとして処理するように指示する。
check -qopt nocheck 特定のタイプの実行時検査を行うコードを生成する。
cinc -qopt nocinc C++ のみ コンパイラーに extern "C" { } ラッパーをインクルード・ファイルのコンテンツの周りに配置するように指示する。
compact -qopt nocompact 最適化とともに使用すると、可能な場合に、実行速度を犠牲にしてコード・サイズが削減される。
complexgccincl -qopt complexgccincl
=/usr/include
指定されたディレクトリーにあるインクルード・ファイルのまわりの #pragma complexgcc(on) および #pragma complexgcc(pop) ディレクティブを内部的にラップするようにコンパイラーに指示する。
cpluscmt -qopt cpluscmt を参照。 C のみ C++ のコメントをソース・ファイルで認識させたい場合は、このオプションを使用する。
cpp_stdinc -qopt - C++ のみ C++ ヘッダーの標準検索ロケーションを指定する。
crt -qopt crt リンク時に標準システム始動ファイルを使用するようにリンカーに指示する。
D -flag - #define プリプロセッサー・ディレクティブにあるのと同様に ID name を定義する。
dataimported -qopt - インポートされるものとしてデータにマークを付ける。
datalocal -qopt - ローカルとしてデータにマークを付ける。
mbcs、dbcs -qopt nodbcs プログラムにマルチバイト文字が含まれる場合には、-qdbcs オプションを使用する。
dbxextra -qopt nodbxextra C に適用 すべての typedef 宣言、 struct 型定義、union 型定義、および enum 型定義をデバッガー処理用に組み込むことを指定する。
digraph -qopt digraph を参照。 プログラム・ソースでの連字の文字シーケンスの使用を可能にする。
directstorage -qopt nodirectstorage ライトスルー対応ストレージまたはキャッシュ禁止ストレージが参照可能であることをコンパイラーに通知する。
dollar -qopt nodollar $ シンボルを ID の名前で使用できるようにする。
E -flag - ソース・ファイルをプリプロセスするようにコンパイラーに指示する。
e -flag - 共用オブジェクトの項目名を指定する。 ld -e name を使用する場合と同等。 ld オプションの追加情報については、システムの資料を参照してください。
eh -qopt eh C++ のみ 例外処理を制御する。
enablevmx -qopt noenablevmx VMX (Vector Multimedia Extension) 命令の生成を使用可能にする。
enum -qopt enum を参照。 列挙の占めるストレージの量を指定する。
F -flag - コンパイラーの代替構成ファイルの名前を指定する。
flag -qopt flag=i:i 報告させる診断メッセージの最低の重大度レベルを指定する。
float -qopt float を参照。 浮動小数点演算を高速化するか正確度を向上させるために、各種浮動小数点オプションを指定する。
flttrap -qopt noflttrap 追加の命令を生成し、浮動小数点例外を検出してトラップする。
fullpath -qopt nofullpath -g オプションを使用するときに、どのようなパス情報をファイル用に保管するかを指定する。
funcsect -qopt nofuncsect 別々のオブジェクト・ファイル、制御セクションまたは csect のそれぞれの関数ごとに命令を配置する。
g -flag - デバッガーが使用するデバッグ情報を生成する。
gcc_c_stdinc -qopt - C に適用 gcc ヘッダーの標準検索ロケーションを変更する。
gcc_cpp_stdinc -qopt - C++ のみ g++ ヘッダーの標準検索ロケーションを変更する。
genproto -qopt nogenproto C に適用 K&R 関数定義から ANSI プロトタイプを生成する。
halt -qopt C に適用halt=s
C++ に適用halt=e
指定した重大度 以上のエラーが検出された場合に、コンパイル・フェーズ後に停止するようにコンパイラーに指示する。
haltonmsg -qopt - C++ のみ 特定のエラー・メッセージが検出されたときは、コンパイル・フェーズ後に停止するようコンパイラーに指示する。
hot -qopt nohot 最適化中に、高位ループ分析および変換の実行をコンパイラーに指示する。
I -flag - 絶対パスを指定しない #include ファイル名に追加の検索パスを指定する。
idirfirst -qopt noidirfirst #include " file_name" ディレクティブで組み込むファイルの検索順序を指定する。
ignerrno -qopt noignerrno コンパイラーが、システム呼び出しによって errno が変更されないと想定して最適化を行うことを許可する。
ignprag -qopt - 特定のプラグマ・ステートメントを無視するようにコンパイラーに指示する。
info -qopt C に適用 noinfo
C++ に適用 info=lan
通知メッセージを作成する。
initauto -qopt noinitauto 自動ストレージを指定された 2 桁の 16 進バイト値に初期化する。
inlglue -qopt noinlglue 外部関数の呼び出しまたは関数ポインターを介した呼び出しを行うために必要なポインター・グルー・コードをインライン化することによって、高速な外部結合を生成する。
inline -qopt inline を参照。 関数の呼び出しを生成する代わりに、関数のインラインを試みる。
ipa -qopt ipa を参照。 プロシージャー間分析 (IPA) と呼ぶクラスの最適化をオンにしたりカスタマイズしたりする。
isolated_call -qopt - ソース・ファイル内の副次作用がない関数を指定する。
keepparm -qopt nokeepparm C++ のみアプリケーションが最適化される場合でも関数仮パラメーターがスタックに保管されているか確認する。
keyword -qopt keyword を参照。 指定されたストリングが、キーワードとして処理されるのか、ID として処理されるのかを制御する。
L -flag L を参照。 リンク時に、-l オプションによって指定したライブラリー・ファイルについて、指定したディレクトリーを検索する。
l -flag l を参照。 リンクのために指定したライブラリーを検索する。
langlvl -qopt langlvl を参照。 コンパイル用の C または C++ の言語レベルを選択する。
lib -qopt lib リンク時に標準システム・ライブラリーを使用するようにコンパイラーに指示する。
libansi -qopt nolibansi ANSI C ライブラリー関数の名前が付いたすべての関数が実際はシステム関数であると見なす。
linedebug -qopt nolinedebug デバッガーのために、省略された行番号およびソース・ファイル名の情報を生成する。
list -qopt nolist オブジェクト・リストを含むコンパイラー・リストを生成する。
listopt -qopt nolistopt 有効なオプションをすべて示すコンパイラー・リストを作成する。
longlit -qopt nolonglit サフィックスをはずしたリテラルを 64 ビット・モードの long 型にする。
longlong -qopt longlong を参照。 プログラムで long long 型を許可する。
M -flag - make コマンドの記述ファイルの組み込みに適したターゲットを含む出力ファイルを作成する。
makedep -qopt - make コマンドの記述ファイルの組み込みに適したターゲットを含む出力ファイルを作成する。
maxerr -qopt nomaxerr 指定した重大度以上のエラーの件数が指定した数に達した場合に、コンパイルを停止するようにコンパイラーに指示する。
maxmem -qopt maxmem=8192 メモリーを大量に消費する特定の最適化のローカル・テーブルに使用するメモリーの量を制限する。
mbcs、dbcs -qopt nombcs プログラムにマルチバイト文字が含まれる場合には、 -qmbcs オプションを使用する。
mkshrobj -qopt - 生成されたオブジェクト・ファイルから共用オブジェクトを作成する。
minimaltoc -qopt nominimaltoc 各オブジェクト・ファイルの別々のデータ・セクションに toc を入れることによって、 64 ビット・コンパイルでの toc オーバーフローを阻止する。
O、optimize -qopt, -flag nooptimize コンパイル中に、選択したレベルでコードを最適化する。
o -flag - コンパイラーによって作成されるオブジェクト・ファイル、アセンブラー・ファイル、または実行可能ファイルの出力位置を指定する。
P -flag - コンパイラー呼び出し時に名前を指定した C または C++ のソース・ファイルをプリプロセスし、プリプロセスされた出力ソース・ファイルを入力ソース・ファイルごとに作成する。
p -flag - コンパイラーが作成するオブジェクト・ファイルをプロファイル用に設定する。
path -qopt - 代替プログラム名およびパス名を構成する。
pdf1、pdf2 -qopt nopdf1nopdf2 プロファイル指示のフィードバックを介して最適化を調整する。
pg -flag - プロファイル用にオブジェクト・ファイルを設定する。
phsinfo -qopt nophsinfo 各コンパイル・フェーズでかかった時間を報告する。
pic -qopt nopic 共用ライブラリーでの使用に適した位置独立コードを生成するようにコンパイラーに指示する。
prefetch -qopt prefetch コンパイルされたコード内でのプリフェッチ指示の生成を使用可能にする。
print -qopt print -qnoprint はリストを抑制する。
priority -qopt - C++ に適用 静的オブジェクトを初期化する場合の優先順位を指定する。
proclocal、 procimported、 procunknown -qopt proclocal を参照。 関数をローカル、インポートされるもの、または不明としてマークする。
proto -qopt noproto C に適用 すべての関数がプロトタイプ宣言されていると見なす。
Q -flag Q を参照。 関数のインラインを試行する。
R -flag R を参照。 共用ライブラリーについて、指定したディレクトリーを実行時に検索する。
r -flag - 再配置可能オブジェクトを作成する。
report -qopt noreport プログラム・ループの並列化と最適化の方法を示す変換レポートを作成するようコンパイラーに指示する。
ro -qopt ro を参照。 ストリング・リテラルの保管型を指定する。
roconst -qopt roconst を参照。 定数値の保管場所を指定する。
rtti -qopt rtti C++ に適用 typeid 演算子および dynamic_cast 演算子のための実行時識別 (RTTI) 情報を生成する。
S -flag - ソース・ファイルごとにアセンブリー言語ファイル (.s) を生成する。
s -flag - シンボル・テーブルをストリップする。
saveopt -qopt nosaveopt コマンド行コンパイラー・オプションをオブジェクト・ファイル内に保管する。
showinc -qopt noshowinc -qsource と共に使用して、プログラム・ソース・リストにユーザー・ヘッダー・ファイル (" " を使用して組み込む) またはシステム・ヘッダー・ファイル (< > を使用して組み込む) を選択的に表示する。
showpdf -qopt noshowpdf -qpdf1 と共に使用して、追加呼び出しおよびブロック数プロファイル情報を実行可能ファイルに追加する。
smallstack -qopt nosmallstack スタック・フレームのサイズを削減するようコンパイラーに指示する。
smp -qopt nosmp プログラム・コードの並列化を使用可能にする。
source -qopt nosource コンパイラー・リストを作成し、ソース・コードを組み込む。
sourcetype -qopt sourcetype=default 実際のソース・ファイル名サフィックスとは関係なく、すべてのソース・ファイルを、このオプションによって指定されたソース・タイプであるかのように処理することをコンパイラーに指示する。
spill -qopt spill=512 レジスター割り振り予備域のサイズを指定する。
srcmsg -qopt nosrcmsg C に適用 stderr ファイル内の診断メッセージに、対応するソース・コード行を追加する。
staticinline -qopt nostaticinline インライン関数を静的であるとして扱う。
staticlink -qopt nostaticlink 共用ライブラリーへのリンクを制御する。
statsym -qopt nostatsym 永続的なストレージ・クラスを持つユーザー定義の非外部名を名前リストに追加する。
stdinc -qopt stdinc #include <file_name> および #include "file_name" ディレクティブで組み込むファイルを指定する。
strict -qopt strict を参照。 プログラムのセマンティクスを変更する可能性がある -O3 オプションによる積極的な最適化をオフにする。
strict_induction -qopt strict_induction を参照。 プログラムのセマンティクスを変更する可能性があるループ帰納変数の最適化を使用不可にする。
suppress -qopt suppress を参照。 抑制するコンパイラー・メッセージ番号を指定する。
symtab -qopt - シンボル・テーブルに示される情報を決定する。
syntaxonly -qopt - C のみ コンパイラーに、オブジェクト・ファイルを生成せずに構文検査を行わせる。
t -flag t を参照。 -B オプションによって指定されたプレフィックスを、指定したプログラムに追加する。
tabsize -qopt tabsize=8 コンパイラーによって認識されるタブの長さを変更する。
tbtable -qopt tbtable を参照。 トレースバック・テーブルの特性を設定する。
tempinc -qopt tempinc を参照。 C++ に適用 テンプレート関数およびクラス宣言に対する別個のインクルード・ファイルを生成し、オプションで指定できるディレクトリーにこれらのファイルを配置する。
templaterecompile -qopt templaterecompile を参照。 C++ に適用 -qtemplateregistry コンパイラー・オプションを使用してコンパイルされたコンパイル単位間の依存性の管理に役立つ。
templateregistry -qopt templateregistry C++ に適用 ソース内で検出されたときにすべてのテンプレートのレコードを保守し、各テンプレートのインスタンスが 1 つだけ生成されるようにする。
tempmax -qopt tempmax=1 C++ に適用 tempinc オプションによって生成させるテンプレート・インクルード・ファイルの最大数をヘッダー・ファイルごとに指定する。
threaded -qopt threaded を参照。 プログラムがマルチスレッド環境で稼働することを示す。
tls -qopt tls を参照。 ローカルとしてデータにマークを付ける。
tmplparse -qopt tmplparse=no C++ に適用 構文解析およびセマンティック検査をテンプレート定義のインプリメンテーションに適用するかどうかを指定する。
tocdata -qopt notocdataアプリケーションが使用するスレッド局在のストレージ・モデルを指定する。
trigraph -qopt trigraph を参照。 プログラム・ソースでの 3 文字表記の文字シーケンスの使用を可能にする。
tune -qopt tune を参照。 実行可能プログラムの最適化対象とするアーキテクチャーを指定する。
U -flag - コンパイラーまたは -D オプションによって定義された ID のうち、指定したものを未定義にする。
unroll -qopt unroll=auto プログラムの内側のループをアンロールする。
unwind -qopt unwind アプリケーションがいずれのプログラム・スタック・アンワインド・メカニズムにも依存しないことをコンパイラーに伝える。
upconv -qopt noupconv C に適用 整数拡張を行うときに unsigned の指定を保持する。
utf -qopt noutf UTF リテラル構文の認識を使用可能にする。
V -flag - コンパイルの進行に関する情報をコマンドに似た形式で報告するようにコンパイラーに指示する。
v -flag - コンパイルの進行に関する情報を報告するようにコンパイラーに指示する。
vftable -qopt vftable C++ に適用 仮想関数テーブルの生成を制御する。
vrsave -qopt vrsave VRSAVE レジスターの保守に必要な関数 prolog および epilog コードを制御する。
W -flag - リストしたワードを、指定したコンパイラー・プログラムに渡す。
w -flag - 警告メッセージの抑止を要求する。
warn64 -qopt nowarn64 32 ビットおよび 64 ビット・コンパイラー・モード間で起こりうるデータ変換問題の検査を使用可能にする。
xcall -qopt noxcall コンパイル単位内の静的ルーチンを扱うコードを、外部呼び出しであるかのように生成する。
xref -qopt noxref すべての ID の相互参照リストを含むコンパイラー・リストを生成する。
y -flag - 浮動小数点定数式のコンパイル時丸めモードを指定する。

IBM Copyright 2003