Allegro示例以127退出

问题描述

我通过下载basic example并相应地在mingw32上设置了GCC,成功地从Allegro Wiki编译并链接binaries(完全不变)。编译不会产生任何错误,与库的链接也不会产生任何错误。此时,没有其他库正在使用。

运行生成的可执行文件时,不会向输出显示任何输出,并且程序将以代码127退出

我正在32位MinGW下使用GCC 9.2.0进行编译,并在64位Windows上运行。如果不匹配,可能会出现链接错误,但事实并非如此(可悲)。

我不知道是什么原因造成的,如果不搁置它,我们很乐意继续发展。感谢所有帮助。

编辑1

GDB在这里并没有太大帮助,它仅说明以下内容。 但是,它确实给出了退出代码的含义的更好的思路-从我读到的0xc0000139是Windows无法加载DLL的时候。我不完全理解为什么,这些DLL位于PATH中(特别是在MinGW /bin目录中)。我也尝试将它们放在可执行文件的目录中毫无用处。

(gdb) b main
Breakpoint 1 at 0x401421: file main.c,line 6.
(gdb) run
Starting program: D:\dev\genart-allegro/genart-allegro.exe
[New Thread 4712.0x1a2c]
[New Thread 4712.0x1674]
[New Thread 4712.0xfac]
[New Thread 4712.0x34d4]
During startup program exited with code 0xc0000139.

编辑2

静态链接Allegro解决了该问题,但是我仍然无法解释为什么动态链接不起作用。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)