01. コマンドの概要 gcc コマンドは、GNU がリリースした C/C++ ベースのコンパイラを使用します。オープンソース分野で最も広く使用されているコンパイラです。強力な機能を備え、パフォーマンスの最適化をサポートするコードをコンパイルします。 gcc は GNU コンパイラ コレクションであり、C、C++、Objective-C、Fortran、Java、Ada、Go、D のフロントエンドと、これらの言語のライブラリ (libstdc++、libgcj など) が含まれています。 GCC はもともと、GNU オペレーティング システム専用に作成されたコンパイラーとして意図されていました。 GNU システムは完全にフリーソフトウェアです。ここでの「無料」とは、ユーザーの自由を尊重することを意味します。 02. コマンド形式 使用法: gcc [オプション] ファイル... 03. 共通オプション -pass-exit-codes 特定のステージを終了するときに最も高いエラー コードを返します --help このヘルプの説明を表示します --target-help ターゲット マシン固有のコマンド ライン オプションを表示します --help={common|optimizers|params|target|warnings|[^] {結合|分離|文書化されていない}}[,...] 特定のタイプのコマンドラインオプションを表示します(サブプロセスのコマンドライン引数を表示するには、「-v --help」を使用します) --version コンパイラのバージョン情報を表示します -dumpspecs 組み込みの仕様文字列をすべて表示します -dumpversion コンパイラのバージョン番号を表示します -dumpmachine コンパイラのターゲットプロセッサを表示します -print-search-dirs コンパイラの検索パスを表示します -print-libgcc-file-name コンパイラの付属ライブラリの名前を表示します -print-file-name=<library> <library> へのフルパスを表示します -print-prog-name=<program> コンパイラコンポーネント <program> へのフルパスを表示します -print-multiarch ターゲットの正規化された GNU トリプレットを表示します。 ライブラリパス内のコンポーネント : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : -pie 位置独立実行ファイルを作成する -shared 共有ライブラリを作成する -x <language> は、次の入力ファイルの言語を指定します。 許可される言語は次のとおりです: c c++ assembler none 「なし」は、ファイル拡張子に基づいてソース ファイルの言語を推測するデフォルトの動作を復元することを意味します。 04. 参考例 4.1 デフォルトの実行ファイルを生成する [deng@localhost bak]$ gcc test.c [deng@localhost 戻る]$ test.c を前処理、アセンブル、コンパイルし、実行可能ファイルにリンクします。出力ファイルが指定されていない場合、デフォルトの出力は a.out になります。 4.2 出力ファイルの指定 [deng@localhost bak]$ gcc test.c -o テスト [deng@localhost 戻る]$ ls 5番目 6番目 7番目 8番目 9番目 テスト test.c [deng@localhost 戻る]$ test.c を前処理、アセンブル、コンパイル、リンクして、実行可能ファイル test を作成します。 -o オプションは出力ファイル名を指定するために使用されます。 4.3 前処理のみ、コンパイル、アセンブリ、リンクなし [deng@localhost bak]$ gcc -E test.c -o test.i [deng@localhost 戻る]$ test.c を前処理し、test.i ファイルを出力します。 4.4 アセンブルやリンクなしでアセンブリ言語にコンパイルする [deng@localhost bak]$ gcc -S test.c -o test.s [deng@localhost 戻る]$ ls 5番目 6番目 7番目 8番目 9番目 テスト test.c test.i test.s [deng@localhost 戻る]$ 前処理された出力ファイル test.i を test.s ファイルにアセンブルします。 4.5 リンクせずにオブジェクトコードにコンパイルおよびアセンブルする [deng@localhost bak]$ gcc -c test.c -o test.o [deng@localhost 戻る]$ ls 5番目 6番目 7番目 8番目 9番目 テスト test.c test.i test.o test.s [deng@localhost 戻る]$ 4.6 ターゲットコードから実行ファイルを生成する [deng@localhost bak]$ gcc test.o -o テスト [deng@localhost 戻る]$ コンパイルされた出力ファイル test.o を最終実行可能ファイル test にリンクします。 4.7 コンパイル時の最適化レベルの指定 [deng@localhost bak]$ gcc -O1 test.c -o テスト [deng@localhost 戻る]$ コンパイル最適化レベル 1 を使用してプログラムをコンパイルします。レベルは1~3です。レベルが高くなるほど最適化の効果は上がりますが、コンパイル時間は長くなります。 4.8 複数ファイルのコンパイル [deng@localhost bak]$ gcc testfun.c test.c -o test [deng@localhost 戻る]$ testfun.c と test.c を別々にコンパイルし、テスト実行可能ファイルにリンクします。 4.9 複数ファイルのコンパイル方法2 [deng@localhost bak]$ gcc -c test.c [deng@localhost バックアップ]$ gcc -c testfun.c [deng@localhost bak]$ gcc test.o testfun.o -o test [deng@localhost 戻る]$ Linux gcc コマンドの具体的な使い方についてはこれで終わりです。Linux gcc コマンドに関するより詳しい内容については、123WORDPRESS.COM の過去の記事や以下の関連記事をご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Win7 インストール MySQL 5.6 チュートリアル図
>>: Vue.js の watch メソッドと computed メソッドの違いの詳細な例
springboot には tomcat サーバーが組み込まれているため、jar パッケージにパッケ...
この記事では、従業員情報の追加と削除の機能を実装するためのjQueryの具体的なコードを参考までに共...
シナリオ昨日、システムは dbAll.sql.gz という名前の特定のデータベースのすべてのテーブル...
表では、左上の境界線の色を個別に定義したり、セルの右下の境界線の色を定義したりできます。これら 2 ...
目次1 v-ifとv-showの使用2. 計算と監視を区別する3 v-for トラバーサルでは、アイ...
この記事では、アコーディオンを実装するためのjQueryの具体的なコードを参考までに紹介します。具体...
Nginx は同じドメイン名で構成されており、http と https の両方でアクセスできます。証...
目次ジェネリック型での条件型の使用ツールタイプ脱出ポッド矢印関数で条件型を使用する型推論による条件型...
目次1. autofs サービスの紹介2. Autofsのインストールと展開3. Autofs効果の...
この記事では、登録またはログイン時に電子メール アドレスを入力する際のドロップダウン プロンプトのネ...
この記事は主に、SQL のストアド プロシージャから返されたデータを取得するプロセスの分析を紹介しま...
ネットワークが分離されているため、MySQL は yum を使用してインストールできません。ここでは...
目次jupyterをインストールするDocker ポートマッピングjupyterをインストールするp...
序文:先週の日曜日、先輩から3ページ作るのを手伝って欲しいと頼まれました。データのやり取りなどはなく...
目次最初のステップのインストールステップ2: MySQLデータを準備する3 番目のステップは、bin...