web-dev-qa-db-ja.com

CLion:エラー:Cコンパイラ「C:/MinGW/bin/gcc.exe」は単純なテストプログラムをコンパイルできません

MinGWを使用してWindows7でCLionを実行しようとしていますが、何らかの理由でCMakeは単純なテストプログラムをコンパイルできませんが、単純なhello worldファイルを作成すると、CMakeの代わりにコンパイラを直接呼び出すと正常にコンパイルされます。

私はすでにMinGWのいくつかのバージョンを試しましたが、エラーに違いはありません。 AVをアンインストールして、それが問題であるかどうかを確認しましたが、ここでも何も変わりませんでした。

私のパスにはMinGWがあり、CMakeもあります。最初は、TEMPフォルダーのアクセス許可に問題があるのではないかと思いましたが、すべて問題ないようです。私も管理者アカウントを使用しています。

これは私がCLionで得るエラーです:

Error:The C compiler "C:/MinGW/bin/gcc.exe" is not able to compile a simple test program.
It fails with the following output:
Change Dir: C:/Users/Jim/.clion10/system/cmake/generated/4cb6a70c/4cb6a70c/__default__/CMakeFiles/CMakeTmp
Run Build Command:"C:/MinGW/bin/mingw32-make.exe" "cmTryCompileExec141319549/fast"
C:/MinGW/bin/mingw32-make.exe -f CMakeFiles\cmTryCompileExec141319549.dir\build.make CMakeFiles/cmTryCompileExec141319549.dir/build
mingw32-make.exe[1]: Entering directory 'C:/Users/Jim/.clion10/system/cmake/generated/4cb6a70c/4cb6a70c/__default__/CMakeFiles/CMakeTmp'
"C:\Program Files (x86)\JetBrains\CLion 1.0\bin\cmake\bin\cmake.exe" -E cmake_progress_report C:\Users\Jim\.clion10\system\cmake\generated\4cb6a70c\4cb6a70c\__default__\CMakeFiles\CMakeTmp\CMakeFiles 1
CMakeFiles\cmTryCompileExec141319549.dir\build.make:56: recipe for target 'CMakeFiles/cmTryCompileExec141319549.dir/testCCompiler.c.obj' failed
process_begin: CreateProcess(C:\Users\Jim\AppData\Local\Temp\make68804-1.bat, C:\Users\Jim\AppData\Local\Temp\make68804-1.bat, ...) failed.
make (e=2): Het systeem kan het opgegeven bestand niet vinden.
mingw32-make.exe[1]: *** [CMakeFiles/cmTryCompileExec141319549.dir/testCCompiler.c.obj] Error 2
mingw32-make.exe[1]: Leaving directory 'C:/Users/Jim/.clion10/system/cmake/generated/4cb6a70c/4cb6a70c/__default__/CMakeFiles/CMakeTmp'
Makefile:117: recipe for target 'cmTryCompileExec141319549/fast' failed
mingw32-make.exe: *** [cmTryCompileExec141319549/fast] Error 2
CMake will not be able to correctly generate this project.

これは、CMDからCMakeを使用しようとしたときに発生するエラーです。 enter image description here

11
Jim Bransen

ダミーのcmakeプロジェクト(単にcmake_minimum_required(VERSION 2.8)add_executable(helloWorld <your hello world program>)を含むCMakeLists.txt)を使用して、コンパイラとCLionは問題ではないことを確認したので、おそらくそれは何かと関係があります。作る。 ここ はログでした。

私の推測では、パスにmsysがあります。 sh.exeがパスにある場合、それは 問題を引き起こすことが知られています です。

安全な代替手段として、makeの代替として ninja を使用することを決定できます(cmake 実験的にサポート ですが、実際にはかなりうまくサポートしています)。 ここ ビルド済みのパッケージを見つけることができます(実際、パスに配置する必要がある実行可能ファイルは1つだけです)。

CLion内の忍者統合 問題なく動作するはずです

1
Antonio

私も同様の問題を抱えていました。 CLionの前にMinGWをインストールしましたか?

MinGW(ベース)を使用してCコンパイラーのみをインストールした場合、CLionが存在しないC++コンパイラーをテストしている可能性があります。

MinGW C++コンパイラをインストールマネージャからインストールしてみてください。または、C:\ MinGWフォルダーを削除して、今度はCとC++の両方のコンパイラーを追加してインストーラーを再起動することもできます。それが機能しない場合は、CLionを再インストールしてみてください。

それは私のために働いた迅速な解決策です。

0