2

我知道 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”完全相同的文件

那么它不会。

所以我的问题是:

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

4

1 回答 1

0

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

于 2013-05-30T14:39:27.440 回答