代码之家  ›  专栏  ›  技术社区  ›  Auxiliary

170 MB Hello World->使用Qt部署应用程序

  •  7
  • Auxiliary  · 技术社区  · 14 年前

    我是QT新手,但C++中没有问题。我使用Qt-Creator,用一个按钮制作了一个简单的程序(就像一个hello-world),然后我构建了这个项目。我无法在windows中运行可执行文件(在创建者之外),因为它需要以下DLL文件:

    libgcc_s_dw2-1.dll
    mingwm10.dll
    QtGuid4.dll
    QtCored4.dll
    

    大的 Dll文件。这是部署Qt应用程序的一种方法。我知道他们的方法是一个独立的静态应用程序,但这不是问题。我对DLL没意见,但依赖性似乎太大了。是否有不同的方法部署文件大小较小的项目?

    谢谢

    3 回复  |  直到 14 年前
        1
  •  20
  •   radix07    14 年前

    为什么不做一个发布版本的构建,使用发布DLL而不是调试DLL,后者要大得多。

    因为这是关于尺寸:

    QtGui4d.dll=~157MB

    发布库

    QtCore.dll约230万

    (查看我的Qt\version\bin目录中的大小)

        2
  •  3
  •   stijn    14 年前

    • “找不到过程入口点”:您安装了多个版本的Qt库。不好的。您正在链接导入库A,而在运行时,您的可执行文件会找到一个dll B,而不是您链接所针对的dll B。在链接时检查项目输出,以查看导入库VS使用的是哪个。最简单的解决方案:删除/卸载所有与Qt相关的内容,然后重新开始。同样地调整项目设置。
    • 在运行时找不到dll:解决方案是将包含qt dll的目录添加到您的路径中
        3
  •  2
  •   teukkam    14 年前

    如果您计划部署Qt应用程序的静态链接版本,您应该考虑在其中构建库的自定义版本 disable all the features 您不需要,因此最小化了库的大小。