【发布时间】:2017-10-20 21:57:17
【问题描述】:
我有一个使用MSYS2 构建的simple window 应用程序,我希望它能够在MSYS2 MinGW shell 之外运行,只需双击该应用程序即可。
问题是,当我想运行应用程序时,它必须通过MSYS MinGW 提示符,否则它会返回错误。
The code execution cannot proceed because libgio-2.0-0.dll was not found. Reinstalling the program may fix this problem
我尝试包括(通过将文件复制到我的 exe 的位置)
libgio-2.0-0.dll 并出现更多错误,称缺少库。我也包括了这些文件。我已经展示了我在下面包含的文件:
libffi-6.dll
libgdk-3-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgtk-3-0.dll
libgobject-2.0-0.dll
libgio-2.0-0.dll
libatk-1.0-0.dll
libcairo-gobject-2.dll
libcairo-2.dll
libepoxy-0.dll
libpcre-1.dll
libwinpthread-1.dll
libgdk_pixbuf-2.0-0.dll
libpango-1.0-0.dll
最后出现错误提示:
The application was unable to start correctly (0xc000007b). Click OK to close the application.
I found what the error message means:
该特定错误代码是指无效的图像格式。但是,错误代码通常意味着您正在尝试运行旨在与 64 位 Windows 操作系统一起使用的程序,但您只有 32 位操作系统。
但是,当我运行的是 x64 计算机时,它没有帮助。 DLL 是 x64 以及 exe。
www.gtk.org 说 GTK+ 依赖于一些库,除了我上面所做的之外,我想不出任何解决方案,也找不到任何关于要包含哪些依赖项以便不通过 MSYS 提示符运行它的文档。
那么我需要做什么才能让我的窗口正常工作?应用程序很好,但依赖项有问题。
其次,对于我提供的脚本,我需要包含哪些依赖项(或者我是否列出了所有依赖项,在这种情况下,我的窗口出了什么问题)?
最后有没有比我尝试做的更简单的方法来获取所有必要的依赖项?
【问题讨论】:
标签: c windows dependencies gtk msys2