无法启动程序,因为缺少Qt5Cored.dll

Ama*_*ani 19 c++ qt5

我在Qt Creator中编译了一个简单的Qt 5项目.从Qt Creator中运行时,它可以工作.但是,当我将可执行文件转移到另一个位置时,会在cmd控制台上生成以下错误消息;

The program can't start because Qt5Cored.dll is missing from your computer.
Try reinstalling the program to fix this program.
Run Code Online (Sandbox Code Playgroud)

我试图在Qt5目录中找不到Qt5Cored.dll找不到.但奇怪的是该程序是从Qt Creator运行的.请帮忙.我使用Qt5和MinGW在Windows 7 64位上

huy*_*itw 11

该文件Qt5Cored.dll将存在于您的系统上,否则它也无法从Qt Creator中运行.我认为这只是Windows搜索让你失望.打开cmd提示符并执行dir c:\Qt5Cored.dll /s

另一个注意事项是那些*d.dll是调试DLL,这意味着您正在分发应用程序的调试版本.您可能希望构建发布版本以进行分发.(在这种情况下你需要Qt5Core.dll)

  • 如果安装Qt5.1.0,可以在`QTDIR\5.1.0\mingw48_32\bin`(QTDIR是你安装Qt5的目录)中找到它们.在他们旁边,您可能还需要`QTDIR\5.1.0\mingw48_32\plugins`中的一些dll. (2认同)
  • @user12345 使用标准的 Qt Windows 部署工具 (`windeployqt`),而不是手动复制 DLL,因为它不能保证以其他方式工作。除了实际复制 DLL 之外,`windeployqt` 在幕后做了一些额外的魔法。有关更多详细信息,请参阅此答案:http://stackoverflow.com/a/33292008/504611 (2认同)

小智 6

在我的计算机上Qt5Core.dll,.dll文件和其他.dll文件存储在此处C:\Qt\Qt5.9.1\5.9.1\xxx\bin(其中xxx是编译器版本)。您的Qt版本可能有所不同。

将所需的.dll文件复制到应用程序位置(.exe文件所在的位置)。这些是我需要复制的最小.dll文件,我的基本应用程序才能正常工作:

  • libgcc_s_dw2-1.dll
  • libstdc++-6.dll
  • libwinpthread-1.dll
  • Qt5Core.dll
  • Qt5Gui.dll
  • Qt5Widgets.dll