1. ホーム
  2. c

[解決済み] C Hello world: Code Blocks IDE、MinGW Cコンパイラ(Windows版

2022-02-05 09:03:46

質問

Code Blocks IDEでC言語の新規プロジェクトを作成する際に作成されるhello world Cプログラムをコンパイルすることができないのですが。MinGWをインストールしたところ、IDEに認識されました。しかし、ビルドしようとすると、以下のような出力が表示されます。

-------------- Build: Debug in TestC3 (compiler: GNU GCC Compiler)---------------

mingw32-gcc.exe -Wall -g  -c
C:\Users\jody\codeblocks\testc3\TestC3\main.c -o obj\Debug\main.o
mingw32-g++.exe  -o bin\Debug\TestC3.exe obj\Debug\main.o    Execution
of 'mingw32-g++.exe  -o bin\Debug\TestC3.exe obj\Debug\main.o' in
'C:\Users\jody\codeblocks\testc3\TestC3' failed.

なぜか実行しようとする mingw32-g++.exe と同様に mingw32-gcc.exe ? (そして、もしこのようなことをしてはいけないのであれば、どのように設定すればよいのでしょうか?)

解決方法は?

その mingw32-gcc.exe のステップは、コンパイルのステップです。その mingw32-g++.exe はリンクステップです。この は正しい順序であり、もし mingw32 ここで、"normal" とは、以下のような意味です。 C++とCのツールをインストールした場合。

リンクステップに失敗している理由は mingw32-g++.exe を実行できないのは、おそらく に存在しない。 PATH . を実行してみてください。 mingw32-g++.exe をコマンドプロンプトで実行し、確認してください。 のあるディレクトリを探します。 mingw32-gcc.exe が存在するかどうかを確認するために mingw32-g++.exe もそこにある。

もし、あなたのmingw32のインストールが何らかの理由で壊れてしまったのなら、アンインストールし、再インストールすることをお勧めします。

もし、あなたが 意図的に Cのツールしかインストールされていないのであれば、それで説明がつきます。 が表示され、簡単に修正することができます。

どちらも mingw32-gcc.exemingw32-g++.exe は、単なるツールドライバプログラムです。起動時に のコンパイルオプションで .c ファイルを作成します。 mingw32-gcc.exe はCコンパイラを呼び出す。呼び出されたとき のコンパイルオプションで .cpp|cxx|... ファイルを作成します。 mingw32-g++.exe はC++コンパイラを呼び出します。もし リンケージオプション付きで起動した場合は、リンカを起動します。

Codeblocksはデフォルトで mingw32-g++.exe リンカを呼び出すようにします。 Cプロジェクト、C++プロジェクト、C/C++プロジェクトのいずれにも対応しており、C/C++のフルツールチェーンを持っていることが前提となっています。

C++のツールをインストールしておらず、Cだけをビルドしたい場合は mingw32-gcc.exe で、Cコンパイラとリンカの両方を呼び出します。CodeBlocks IDEで設定する場合。

  • ナビゲート 設定方法 -> コンパイラ
  • を確保する。 選択されたコンパイラ GNU GCC
  • へのタブ ツールチェイン実行可能ファイル
  • 変更点 ダイナミックライブ用リンカー から mingw32-g++.exe から mingw32-gcc.exe
  • からOK 設定 を実行し、プロジェクトを再構築してください。