2014-04-30 55 views
0

我有以下代码:的 “Hello world” 的Fortran(gfortran)无法在Windows中运行8.1

PROGRAM TEST 
    IMPLICIT NONE 

    PRINT *, "test" 
END PROGRAM TEST 

它编译成功使用这个命令:

C:/cygwin64/bin/x86_64-w64-mingw32-gfortran.exe test.f08 -o test.exe 

当我运行程序通过双击它,它会产生错误:

“应用程序无法正确启动(0xc000007b)。单击确定关闭应用程序。”

文件libgfortran-3.dll与可执行文件位于同一文件夹中。我的环境是Windows 8.1 64位。 Cygwin(Setup.exe版本2.850(64位))安装到C:\ cyginw64。所有默认软件包都已安装,以及所有“Base”和“Devel”软件包。我的系统PATH环境变量包括C:\ cygwin64 \ bin。从Cygwin64终端运行程序不会产生任何输出。

什么是造成此错误?我有另一个更复杂的程序,遭受同样的错误。

可能相关:why gfortran under cygwin can't compile correctly?

+0

@DavidHeffernan你是怎么想的?这是错误信息吗?安装了所有这些软件包后会发生什么?我还发现我可以从Cygwin终端成功编译测试程序。 – user1559027

回答

1

即错误代码是一个NTSTATUS代码,具体地STATUS_INVALID_IMAGE_FORMAT。几乎没有失败,这意味着您试图将一个32位模块加载到64位进程中。或相反亦然。使用依赖分析工具来确定哪个模块具有错误的位数。例如Dependency Walker。

相关问题