JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris Studio 12.3: C ユーザーガイド     Oracle Solaris Studio 12.3 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  C コンパイラの紹介

2.  C コンパイラ実装に固有の情報

3.  C コードの並列化

4.  lint ソースコード検査プログラム

5.  型に基づく別名解析

6.  ISO C への移行

7.  64 ビット環境に対応するアプリケーションへの変換

8.  cscope: 対話的な C プログラムの検査

A.  機能別コンパイラオプション

B.  C コンパイラオプションリファレンス

B.1 オプションの構文

B.2 cc のオプション

B.2.1 -#

B.2.2 -###

B.2.3 -Aname[ (tokens)]

B.2.4 -B[static| dynamic]

B.2.5 -C

B.2.6 -c

B.2.7 -Dname[(arg[,arg])][=expasion]

B.2.8 -d[y| n]

B.2.9 -dalign

B.2.10 -E

B.2.11 -errfmt[=[ no%]error]

B.2.12 -errhdr[=h]

B.2.13 -erroff[= t]

B.2.14 -errshort[= i]

B.2.15 -errtags[= a]

B.2.16 -errwarn[= t]

B.2.17 -fast

B.2.18 -fd

B.2.19 -features=[v]

B.2.19.1 --features=typeof の例

B.2.20 -flags

B.2.21 -flteval[={ any|2}]

B.2.22 -fma[={ none|fused}]

B.2.23 -fnonstd

B.2.24 -fns[={no |yes}]

B.2.25 -fPIC

B.2.26 -fpic

B.2.27 -fprecision=p

B.2.28 -fround=r

B.2.29 -fsimple[= n]

B.2.30 -fsingle

B.2.31 -fstore

B.2.32 -ftrap=t[ ,t...]

B.2.33 -G

B.2.34 -g

B.2.35 -g3

B.2.36 -H

B.2.37 -h name

B.2.38 -I[-| dir]

B.2.39 -i

B.2.40 -include filename

B.2.41 -KPIC

B.2.42 -Kpic

B.2.43 -keeptmp

B.2.44 -Ldir

B.2.45 -lname

B.2.46 -library=sunperf

B.2.47 -m32|-m64

B.2.48 -mc

B.2.49 -misalign

B.2.50 -misalign2

B.2.51 -mr[, string]

B.2.52 -mt[={yes |no}]

B.2.53 -native

B.2.54 -nofstore

B.2.55 -O

B.2.56 -o filename

B.2.57 -P

B.2.58 -p

B.2.59 -Qoption phase option[,option..]

B.2.60 -Q[y| n]

B.2.61 -qp

B.2.62 -Rdir[ :dir]

B.2.63 -S

B.2.64 -s

B.2.65 -traceback[={ %none|common|signals_list}]

B.2.66 -Uname

B.2.67 -V

B.2.68 -v

B.2.69 -Wc ,arg

B.2.70 -w

B.2.71 -X[c| a|t|s]

B.2.72 -x386

B.2.73 -x486

B.2.74 -Xlinker arg

B.2.75 -xaddr32[=yes| no]

B.2.76 -xalias_level[= l]

B.2.77 -xanalyze={code| no}

B.2.78 -xannotate[=yes| no]

B.2.79 -xarch=isa

B.2.79.1 SPARC および x86 用の -xarch フラグ

B.2.79.2 SPARC での -xarch のフラグ

B.2.79.3 x86 での -xarch のフラグ

B.2.79.4 相互の関連性

B.2.79.5 警告

B.2.80 -xautopar

B.2.81 -xbinopt={prepare| off}

B.2.82 -xbuiltin[=( %all|%default|%none)]

B.2.83 -xCC

B.2.84 -xc99[= o]

B.2.85 -xcache[= c]

B.2.86 -xcg[89| 92]

B.2.87 -xchar[= o]

B.2.88 -xchar_byte_order[ =o]

B.2.89 -xcheck[= o]

B.2.89.1 -xcheck=init_local の初期化値

基本型

構造体、共用体、配列の初期化

B.2.90 -xchip[= c]

B.2.91 -xcode[= v]

B.2.92 -xcrossfile

B.2.93 -xcsi

B.2.94 -xdebugformat=[stabs|dwarf ]

B.2.95 -xdepend=[yes| no]

B.2.96 -xdryrun

B.2.97 -xdumpmacros[= value[,value...]]

B.2.98 -xe

B.2.99 -xF[= v[,v...]]

B.2.99.1 値

B.2.100 -xhelp=flags

B.2.101 -xhwcprof

B.2.102 -xinline=list

B.2.103 -xinstrument=[ no%]datarace

B.2.104 -xipo[= a]

B.2.104.1 -xipo の例

B.2.104.2 -xipo=2 による内部手続き解析を行うべきでないケース

B.2.105 -xipo_archive=[ a]

B.2.106 -xivdep[= p]

B.2.107 -xjobs=n

B.2.108 -xkeepframe[=[ %all,%none,name,no% name]]

B.2.109 -xldscope={v}

B.2.110 -xlibmieee

B.2.111 -xlibmil

B.2.112 -xlibmopt

B.2.113 -xlic_lib=sunperf

B.2.114 -xlicinfo

B.2.115 -xlinkopt[= level]

B.2.116 -xloopinfo

B.2.117 -xM

B.2.118 -xM1

B.2.119 -xMD

B.2.120 -xMF filename

B.2.121 -xMMD

B.2.122 -xMerge

B.2.123 -xmaxopt[=v]

B.2.124 -xmemalign=ab

B.2.125 -xmodel=[a]

B.2.126 -xnolib

B.2.127 -xnolibmil

B.2.128 -xnolibmopt

B.2.129 -xnorunpath

B.2.130 -xO[1|2| 3|4|5]

B.2.130.1 SPARC 最適化

B.2.130.2 x86 最適化レベル

B.2.131 -xopenmp[= i]

B.2.132 -xP

B.2.133 -xpagesize=n

B.2.134 -xpagesize_heap=n

B.2.135 -xpagesize_stack=n

B.2.136 -xpch=v

B.2.136.1 プリコンパイル済みヘッダーファイルの自動作成

B.2.136.2 プリコンパイル済みヘッダーファイルの手動作成

B.2.136.3 既存のプリコンパイル済みヘッダーファイルの処理方法

B.2.136.4 特定のプリコンパイル済みヘッダーファイルの使用の指定

B.2.136.5 活性文字列 (Viable Prefix)

B.2.136.6 ヘッダーファイルの妥当性の判定

B.2.136.7 プリコンパイル済みヘッダーファイルキャッシュ

B.2.136.8 警告

B.2.136.9 プリコンパイル済みヘッダーファイルの依存関係と make ファイル

B.2.137 -xpchstop=[file |<include>]

B.2.138 -xpec[={yes|no}]

B.2.139 -xpentium

B.2.140 -xpg

B.2.141 -xprefetch[= val[,val]]

B.2.141.1 先読み応答率

B.2.142 -xprefetch_auto_type= a

B.2.143 -xprefetch_level= l

B.2.144 -xprofile= p

B.2.145 -xprofile_ircache[ =path]

B.2.146 -xprofile_pathmap

B.2.147 -xreduction

B.2.148 -xregs=r[, r...]

B.2.149 -xrestrict[= f]

B.2.150 -xs

B.2.151 -xsafe=mem

B.2.152 -xsfpconst

B.2.153 -xspace

B.2.154 -xstrconst

B.2.155 -xtarget=t

B.2.155.1 SPARC プラットフォームの -xtarget の値

B.2.155.2 x86 プラットフォームの -xtarget の値

B.2.156 -xtemp=dir

B.2.157 -xthreadvar[= o]

B.2.158 -xtime

B.2.159 -xtransition

B.2.160 -xtrigraphs[={ yes|no}]

B.2.161 -xunroll=n

B.2.162 -xustr={ascii_utf16_ushort |no}

B.2.163 -xvector[= a]

B.2.164 -xvis

B.2.165 -xvpara

B.2.166 -Yc , dir

B.2.167 -YA, dir

B.2.168 -YI, dir

B.2.169 -YP, dir

B.2.170 -YS, dir

B.2.171 -Zll

B.3 リンカーに渡されるオプション

B.4 ユーザー指定のデフォルトオプションファイル

C.  ISO/IEC C 99 の処理系定義の動作

D.  C99 の機能

E.  ISO/IEC C90 の処理系定義の動作

F.  ISO C データ表現

G.  パフォーマンスチューニング

H.  Oracle Solaris Studio C: K&R C と ISO C の違い

索引

B.4 ユーザー指定のデフォルトオプションファイル

これらのデフォルトコンパイラオプションファイルは、ユーザーがすべてのコンパイルに適用される (ほかの方法で上書きされる場合を除く)、一連のデフォルトオプションを指定することを許可します。たとえば、ファイルがすべてのコンパイルを —xO2 をデフォルトで行うことを指定したり、ファイル setup.il を自動的にインクルードしたりできます。

コンパイラは起動時に、すべてのコンパイルに含めるべきデフォルトオプションがリストされているデフォルトオプションファイルを検索します。環境変数 SPRO_DEFAULTS_PATH は、デフォルトファイルを検索するディレクトリのコロン区切りリストを指定します。

環境変数が設定されていない場合、標準のデフォルトセットが使用されます。環境変数が設定されているが空の場合、デフォルトは使用されません。

デフォルトファイルの名前は compiler.defaults の形式である必要があります。compiler は cc、c89、c99、CC、ftn、または lint のいずれかです。たとえば、C コンパイラ用のデフォルトは cc.defaults です。

SPRO_DEFAULTS_PATH にリストされたディレクトリにコンパイラ用のデフォルトファイルが見つかった場合、コンパイラはファイルを読み取り、コマンド行でオプションを処理する前にオプションを処理します。最初に見つかったデフォルトファイルが使用され、検索は終了します。

システム管理者は、システム全体のデフォルトファイルを Studio-install-path/prod/etc/config に作成してもかまいません。環境変数が設定されている場合、インストールされたデフォルトファイルは読み取られません。

デフォルトファイルの形式はコマンド行と同様です。ファイルの各行には、1 つ以上のコンパイラオプションを空白で区切って含めてもかまいません。ワイルドカードや置換などのシェル展開は、デフォルトファイル内のオプションには適用されません。

—#、—###、および —dryrun の各オプションによって生成される詳細出力では、SPRO_DEFAULTS_PATH の値と、完全展開されたコマンド行が表示されます。

コマンド行でユーザーが指定するオプションは通常、デフォルトファイルから読み取られるオプションより優先されます。たとえば、—xO4 でのコンパイルがデフォルトファイルで指定されており、ユーザーがコマンド行で —xO2 を指定した場合、—xO2 が使用されます。

デフォルトオプションファイルに記載されているオプションの一部は、コマンド行で指定されたオプションのあとに付加されます。これらは、プリプロセッサオプション —I、リンカーオプション —B、—L、—R —l、および、ソースファイル、オブジェクトファイル、アーカイブ、共有オブジェクトなどのすべてのファイル引数です。

次に示すのは、ユーザー指定のデフォルトコンパイラオプション起動ファイルがどのように使用される可能性があるかの例です。

demo% cat /project/defaults/cc.defaults
-I/project/src/hdrs —L/project/libs —llibproj —xvpara
demo% setenv SPRO_DEFAULTS_PATH /project/defaults
demo% cc —c —I/local/hdrs —L/local/libs —lliblocal tst.c

現在、このコマンドは次と同義です。

cc -fast —xvpara —c —I/local/hdrs —L/local/libs —lliblocal tst.c \ 
     —I/project/src/hdrs —L/project/libs —llibproj

コンパイラデフォルトファイルはプロジェクト全体のデフォルトを設定するための便利な方法ですが、問題の診断を困難にする原因になる場合もあります。このような問題を回避するには、環境変数 SPRO_DEFAULTS_PATH を現在のディレクトリではなく絶対パスに設定します。

デフォルトオプションファイルのインタフェース安定性はコミットされていません。オプション処理の順序は、将来のリリースで変更される可能性があります。