【问题标题】:Trouble with portability of Qt 5.0.2 applications. How to make minimalistic Qt package?Qt 5.0.2 应用程序的可移植性问题。如何制作简约的 Qt 包?
【发布时间】:2013-05-30 13:41:38
【问题描述】:

我知道 Qt 默认不是静态构建的,如果有任何带有 .lib 或 .a 扩展名的文件,那么这些文件只是导入库。我希望我的应用程序小巧便携,所以除了考虑静态重新编译 Qt 之外,我还考虑如何使动态库包尽可能小,以便可以安装在与 Qt 无关的另一台计算机上,使其完全在运行我的 Qt 应用程序时有效。在这种情况下,我正在使用 Windows Xp 或更高版本的 Windows。在创建这样一个包的情况下,我首先意识到 Qt5 安装程序不会向系统和用户路径添加任何内容,并且我无法在没有 Qt Creator 的情况下运行我编译的应用程序。然而,在我添加到系统和用户路径变量之后:

"K:\Qt\Qt5.0.2\5.0.2\mingw47_32\bin"

在哪里

“K:\Qt\Qt5.0.2”

是 Qt 安装文件夹,我可以从驱动器上的任何位置在 Qt Creator 之外运行我的应用程序。考虑到这个事实,我认为对于这样的包来说,复制就足够了

"K:\Qt\Qt5.0.2\5.0.2\mingw47_32\bin"

到另一台计算机,将其添加到系统和用户路径,一切都会如我所愿。不幸的是,这不是真的。虽然对我无法在第二台 PC 上运行我的应用程序感到有点失望,但我在那里安装了相同的 Qt 版本,制作了类似的路径条目,一切都开始正常工作。更具体地说,第二台 PC 上的安装目录是:

“M:\Qt\Qt5.0.2”

如果我添加到路径中:

"M:\Qt\Qt5.0.2\5.0.2\mingw47_32\bin"

那么它可以工作,但如果不是我添加它:

"M:\Qt_5.0.2_libs\bin"

其中包含与“M:\Qt\Qt5.0.2\5.0.2\mingw47_32\bin”完全相同的文件

那么它不会。

所以我的问题是:

我缺少什么所以它不起作用以及如何制作这样一个简约的包?

【问题讨论】:

    标签: c++ windows qt4


    【解决方案1】:

    Qt Documentation 中介绍了部署应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多