Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 如果QWebKit(11Mb)是';已经与我的主机应用程序链接了吗?_Qt_Shared Libraries - Fatal编程技术网

Qt 如果QWebKit(11Mb)是';已经与我的主机应用程序链接了吗?

Qt 如果QWebKit(11Mb)是';已经与我的主机应用程序链接了吗?,qt,shared-libraries,Qt,Shared Libraries,我正在用Qt编写一个应用程序,它使用QWebKit访问网页。 我想提取一些功能到一个dll,可以自动更新,但似乎我必须链接QWebkit与主机应用程序和我的dll,这将增加额外的11Mb的应用程序安装程序和额外的11Mb的自动更新不是我要找的 有没有办法将webkit(以及xml和gui)仅链接到主机应用程序,并让共享库在加载到主机应用程序时使用它? 谢谢。如果您将Qt用作共享库(dll),而不是静态链接,那么您只需要提供一份webkit dll 如果您是静态链接,则需要将webkit链接到应用

我正在用Qt编写一个应用程序,它使用QWebKit访问网页。 我想提取一些功能到一个dll,可以自动更新,但似乎我必须链接QWebkit与主机应用程序和我的dll,这将增加额外的11Mb的应用程序安装程序和额外的11Mb的自动更新不是我要找的

有没有办法将webkit(以及xml和gui)仅链接到主机应用程序,并让共享库在加载到主机应用程序时使用它?
谢谢。

如果您将Qt用作共享库(dll),而不是静态链接,那么您只需要提供一份webkit dll

如果您是静态链接,则需要将webkit链接到应用程序中需要它的任何部分。如果您的主应用程序和要提取的部分都需要webkit,那么您需要将其链接两次


除非您确实需要尽可能小的程序大小,否则我建议您不要静态链接到Qt,而只提供所需的dll。这样做比静态链接要简单得多。

如果您将Qt用作共享库(dll),而不是静态链接,那么您只需要提供一份webkit dll

如果您是静态链接,则需要将webkit链接到应用程序中需要它的任何部分。如果您的主应用程序和要提取的部分都需要webkit,那么您需要将其链接两次


除非您确实需要尽可能小的程序大小,否则我建议您不要静态链接到Qt,而只提供所需的dll。这样做远比静态链接简单。

有趣的是,我在主机应用程序中使用QT作为共享库,但我的dll是静态链接QT的。在QT Creator中找不到对此负责的任何选项。我应该在哪里检查它?我不熟悉Qt Creator。如果在它的项目配置对话框中看不到任何明显的内容,您可能需要直接编辑.pro文件。谢谢,但它看起来好像在IDE中的某个地方,但我找不到它,或者它根本不是静态链接。好的,我发现11Mb只是调试信息,在发布模式下。dll大小减小到大约.5Mb,这很好。有趣的是,我在主机应用程序中使用QT作为共享库,但我的dll静态链接到QT。在QT Creator中找不到对此负责的任何选项。我应该在哪里检查它?我不熟悉Qt Creator。如果在它的项目配置对话框中看不到任何明显的内容,您可能需要直接编辑.pro文件。谢谢,但它看起来好像在IDE中的某个地方,但我找不到它,或者它根本不是静态链接。好的,我发现11Mb只是调试信息,在发布模式下。dll大小减少到大约.5Mb,这很好。