2016-04-25 8 views
0

Ich fühle mich völlig verloren zu versuchen CMake unter Windows zu arbeiten. Ich habe ein Projekt (ECCODES), das Fortran und C-Dateien enthält. Ich kann Fortran-Dateien kompilieren, wenn ich CMake nicht verwende. Aber dieses Projekt kam mit einer Tonne von CMake-Dateien. Ich schaue auf den Fehler unten und es sagt mir, "Ich (CMake) kann nicht ein einfaches Fortran-Programm kompilieren, obwohl Sie Fortran-Dateien kompilieren können, wenn Sie CMake nicht verwenden." Kann jemand Sinn machen? Ich versuche, mingw64 zu verwenden, da ich cygwin in diesem Projekt für den Windows-Build nicht verwenden kann. Unter Mac OS X und GNU/Linux alles baut in Ordnung, aber ich habe dieses Projekt auf Windows laufen ...Wie kann ich eine grundlegende Fortran-Datei kompilieren auf Windows/MinGW mit CMake?

Error:The Fortran compiler "c:/gcc-5.1.0-tdm64-1-fortran/bin/gfortran.exe" is not able to compile a simple test program. 
It fails with the following output: 
Change Dir: C:/Users/knauthg/.CLion2016.1/system/cmake/generated/ECCodes-45f4e5f3/45f4e5f3/__default__/CMakeFiles/CMakeTmp 
Run Build Command:"C:/mingw64/bin/mingw32-make.exe" "cmTC_93cb8/fast" 
C:/mingw64/bin/mingw32-make.exe -f CMakeFiles\cmTC_93cb8.dir\build.make CMakeFiles/cmTC_93cb8.dir/build 
mingw32-make.exe[1]: Entering directory 'C:/Users/knauthg/.CLion2016.1/system/cmake/generated/ECCodes-45f4e5f3/45f4e5f3/__default__/CMakeFiles/CMakeTmp' 
Building Fortran object CMakeFiles/cmTC_93cb8.dir/testFortranCompiler.f.obj 
c:\gcc-5.1.0-tdm64-1-fortran\bin\gfortran.exe -c C:\Users\knauthg\.CLion2016.1\system\cmake\generated\ECCodes-45f4e5f3\45f4e5f3\__default__\CMakeFiles\CMakeTmp\testFortranCompiler.f -o CMakeFiles\cmTC_93cb8.dir\testFortranCompiler.f.obj 
CMakeFiles\cmTC_93cb8.dir\build.make:64: recipe for target 'CMakeFiles/cmTC_93cb8.dir/testFortranCompiler.f.obj' failed 
mingw32-make.exe[1]: *** [CMakeFiles/cmTC_93cb8.dir/testFortranCompiler.f.obj] Error 1 
mingw32-make.exe[1]: Leaving directory 'C:/Users/knauthg/.CLion2016.1/system/cmake/generated/ECCodes-45f4e5f3/45f4e5f3/__default__/CMakeFiles/CMakeTmp' 
Makefile:125: recipe for target 'cmTC_93cb8/fast' failed 
mingw32-make.exe: *** [cmTC_93cb8/fast] Error 2 
CMake will not be able to correctly generate this project. 

Antwort

0

Bevor ich wurde mit der tdm-gcc Windows 64-Bit-Version von gfortran. Ich wechselte zu dem 64-Bit-Build von gfortran von Simply Fortran, und jetzt baut das gesamte ECCODES-Projekt vollständig mit CMake. Ich benutze immer noch MingW64 gcc, um die C-Dateien zu kompilieren.

Hut Tipp zu John Wasilewski auf einem thread of Physics Forums wer gab den Tipp über Simply Fortran.