如何建立的Qt 5静态(How to build Qt 5 statically)

2019-07-21 08:18发布

我曾与基于Qt 5.0.1在Linux环境在Qt Creator的2.6.2。 该应用程序工作得很好,我做了编译,但是当我执行它在另一台计算机上我得到了这样的错误在计算机上:

error while loading shared libraries: libQt5WebKitWidgets.so.5: cannot open shared object file: No such file or directory
error while loading shared libraries: libxslt.so.1: cannot open shared object file: No such file or directory

我发现在这一些解决方案的链接 (一些链接都死了)。

所以我添加到我的.pro文件中这一行:

CONFIG += static

要静态编译我的项目。

我认为该文件我得到的将是更大的,但我得到了相同的尺寸和相同的错误。

谢谢。

Answer 1:

Qt的共享库你不测试它在另一台计算机上存在。 所以,你需要:

  1. 共享库复制到其他机器。 要么...
  2. 创建静态Qt的构建与应用程序链接。

这是不够的只是添加CONFIG += static到您的.pro文件,你还需要Qt的静态库。 所以,我们要做#2你需要得到Qt的源代码,并建立它自己。

此外,Qt是在LGPL许可,所以你需要知道的是,当静态链接。 还有一些谁相信LGPL不允许静态链接(除非你LGPL自己的代码)和其他人谁相信它(只要你愿意释放对象的代码为您的应用程序)。 但是,这是一个整体的其他讨论。



文章来源: How to build Qt 5 statically
标签: c++ linux qt gcc qt5