静态链接Qt项目

时间:2011-04-17 08:32:28

标签: c++ visual-studio visual-studio-2010 qt static-libraries

我有一个我在Visual Studio 2010 Professional中构建的Qt项目。但是,当我运行它(在调试或释放模式下)时,它会要求一些Qt dll。如果我提供dll并将它们扔进System32,它可以工作,但我的问题是,如何使它成为所有库都包含在.exe中?我有我需要的所有静态库,我只是不知道如何制作它以便应用程序不会向最终用户询问它们。

1 个答案:

答案 0 :(得分:6)

正确的方法是创建一个安装程序,将Qt库与您的应用程序一起安装。 Visual Studio附带了一个安装项目模板,您可以使用该模板轻松创建自己的自定义安装程序。由于种种原因,静态链接很少是一个很好的选择。

但是,如果您坚持静态链接,则需要使用-static标志重新编译Qt源。
对于Qt 4,可以使用 here 进行演练。

如果您使用的是QPL的LGPL版本,请确保您已阅读this question的答案并适当解决部署中的所有法律问题。