Qt创建者默认是静态还是动态链接它的库?

b28*_*ff1 20 qt qt-creator

我正在开发一个闭源应用程序,并按照LGPL这样做,我必须动态地将Qt的库链接到我的应用程序.Qt是默认执行此操作还是必须采取措施?如果是这样的话,我该如何去做呢?

Sys*_*ank 25

Qt默认使用动态链接.

在部署到非开发人员计算机时,您会立即注意到这一点,因为没有Qt库,您的代码将无法运行.

如果你担心的是LGPL,那么在编译Qt时要小心.使用Qt的大多数LGPL违规不是因为静态链接(因为动态是默认值),而是因为使用非默认参数编译Qt.

LGPL不只是必须在您的二进制文件中提供库,而且还指定您的用户如何构建自己的LGPL部分.如果您自己编译Qt并且不使用网站上预编译的二进制文件,则必须在您的版本中记录构建配置的那一部分!

只要您的程序运行正常,就可以在没有安装Qt的情况下为非开发人员环境准备发布版本.一旦删除必须沿程序复制的DLL(或操作系统使用的任何格式),您的程序就会失败.