没有QtCreator,Exe文件无法运行
我安装了适用于Windows 32位(MinGW 4.7823 MB)的Qt 5.0.1 然后我创建了简单的Quick2应用程序并对其进行了编译。应用程序位于its文件夹中,应用程序从QtCreator运行。我想在没有QtCreator的情况下运行这个exe文件。为此,我从C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin复制文件:没有QtCreator,Exe文件无法运行,qt,qml,qt5,qt-quick,qtquick2,Qt,Qml,Qt5,Qt Quick,Qtquick2,我安装了适用于Windows 32位(MinGW 4.7823 MB)的Qt 5.0.1 然后我创建了简单的Quick2应用程序并对其进行了编译。应用程序位于its文件夹中,应用程序从QtCreator运行。我想在没有QtCreator的情况下运行这个exe文件。为此,我从C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin复制文件: Qt5Core.dll icuin49.dll libgcc_s_sjlj-1.dll libwinpthread-1.dll libGLESv2
我忘了添加包含qml文件的文件夹。将可执行文件放在中性目录中,就像桌面上新创建的目录一样。然后跑。它将向您显示缺失库的列表。对于start
Qt5Core.dll
,libgcc_s_sjlj-1.dll
,您指定的将是缺少的一个。你必须在你的系统上找到它们,然后一个接一个地复制到这个目录。大部分丢失的文件将位于您指定的目录中(C:\Qt\Qt5.0.1\5.0.1\mingw47\u 32\bin
)。如果找不到其他问题,请使用列表编辑问题
注意:一般情况下丢失的文件类型:
- Qt库。如果Qt被编译为静态的,那么它们不应该出现
- Misc库Qt依赖于:例如OpenSSL。如果Qt和此库都是静态的,则不显示
- 编译器库:例如,OP的gcc
。它们通常是动态的,如果不在库搜索路径中,则需要复制libgcc_s_sjlj
- 不要担心丢失的dll文件。
将.exe文件放入以下路径的文件夹:“C:\Qt\Qt5.0.1\5.0.1\mingw47\u 32\bin”
现在可以运行.exe文件了。它工作正常。在路径中添加“C:\Qt\Qt5.0.1\5.0.1\mingw47\u 32\bin”。然后应用程序应该可以工作。我更新了使用dll的列表,但程序在运行时出现问题。Dependency walker显示了我描述的错误:当我从C:\Qt\Qt5.0.1\5.0.1\mingw47\u 32\bin和C:\Qt\Qt5.0.1\5.0.1\mingw47\u 32\platforms程序复制所有dll时,会运行\u ZN6icu\u 4910Charstring15GetAppendBuffereiir10UserCode,但没有显示任何内容。非常感谢!Dependency walker帮助找到了dll。我忘了添加包含qml文件的文件夹。库的最终列表:icuin49.dll、icuuc49.dll、libEGL.dll、libgcc_s_sjlj-1.dll、libGLESv2.dll、libstdc++-6.dll、libwinpthread-1.dll、Qt5Core.dll、Qt5Gui.dll、Qt5Network.dll、Qt5Qml.dll、Qt5Quick.dll、Qt5V8.dll。Qt库还有一个替代依赖性walker的方法。它叫windeployqt,你可以在QTDIR/bin/windeployqt找到它。这是在本页底部解释:我不会把其他应用程序的bin文件夹中的应用程序。。。对于测试来说,是的,但这并不是问题的解决方案。虽然可以在那里运行应用程序,但绝对不可能在每个可执行文件中都发布Qt发行版。如上所述,正确的方法是解决所有依赖项。除非您只是想在自己的计算机上运行此操作(并且不想出于任何原因单击Creator中的“执行”按钮),否则不要这样做。这无助于制造一个可部署的。哦,天哪。明天的计算机科学考试,由于这个该死的问题,我想我永远也考不好了。解决了的!我对你感激不尽!!!!!!此问题在以下链接中解决。糟糕的主意。如果您试图在Creator之外启动此功能,那么您可能正在尝试制作/测试可部署副本。