最終更新:2017-05-18 (木) 15:43:47 (127d)  

gcc はてなブックマークを見る
Top / gcc

http://linuxjm.sourceforge.jp/html/GNU_gcc/man1/gcc.1.html

http://www.geocities.jp/woodwood77777/gcc_gnu.htm

SYNOPSIS

gcc [-c|-S|-E] [-std=standard]
   [-g] [-pg] [-Olevel]
   [-Wwarn...] [-pedantic]
   [-Idir...] [dir...]
   [-Dmacro[=defn]...] [-Umacro]
   [-foption...] [-mmachine-option...]
   [-o outfile] [@file] infile...

gcc hoge.cpp -o hoge

プリプロセッサ

引数

  • パラメータ意味値とか
    gcc -W?警告の表示all-Wall
    gcc -o?出力するファイル名ファイル名-o test.a
    gcc -O?最適化1,2,3-O3
    gcc -S?アセンブリ出力
    gcc -c?コンパイルはするがリンクはしない。オブジェクトファイルを出力。
    gcc -E?Cプリプロセッサの処理のみを行なう
    gcc -mプロセッサごとのオプション
    gcc -v?(標準エラー出力に対して) コンパイルの各ステージで実行されるコマンドを表示

オプション

ディレクトリオプション

  • -I(dir) - dirをインクルードパスに追加
  • -L(dir) - dirを-lによって指定されたライブラリの検索パスに追加

-x : Specify the source language

  • -x c
  • -x c++
  • -x objective-c
  • -x assembler-with-cpp

リンカオプション

  • -l(library) - 名前が library であるライブラリをリンク時に使用 (libxxxのxxxを指定)
  • -c - コンパイルはするがリンクはしない。オブジェクトファイルを出力。
  • -S - アセンブリ出力
  • -E - Cプリプロセッサの処理のみを行なう

プリプロセッサ

  • -D macro - マクロ macro に対して文字列 `1' を定義として与える。
  • -D name=definition - nameマクロを定義

検索パス

  • gcc -print-search-dirs

プリプロセッサで定義済みのマクロを表示

  • gcc -dM -E -xc /dev/null
  • -dM - プリプロセッサに対して、プリプロセス終了時に有効であったマクロの定義の みを出力とすることを指定する。`-E' オプションとともに使用する。
  • -E - プリプロセッサの処理のみを行なう
  • -xc - 言語を指定。-x language