静态链接的应用程序是否也可以链接到某些动态库?

时间:2017-06-23 04:21:50

标签: c++ qt5 static-linking dynamic-linking

我正在使用Qt 5.8构建应用程序并设置静态构建(因为这似乎是在将应用程序部署到其他计算机时使OpenSSL正常工作的最佳方式)。但是,我们还依赖WebEngine cannot be built statically

是否可以使用静态构建的Qt5.8构建应用程序,但在编译时仍然可以动态链接WebEngine库?

我可以让应用程序使用完全动态的构建 - 所以它只是动态链接任何未构建到静态编译器中的库吗?显然,在部署时我仍然需要为动态库提供可执行文件。

2 个答案:

答案 0 :(得分:0)

是的,你可以。 Qt(qmake,cmake,qbs)中使用的几乎所有构建系统都提供了连接静态和动态库的简单选项。

您使用的构建系统是什么?

答案 1 :(得分:0)

是的,你可以做到。我必须构建Net-SNMP,它给了我一个./configure文件,其中我提到了共享和静态库,其中系统库是动态链接的,OpenSSL是静态链接的。

您可以在下载Net-SNMP后查看./configure文件并浏览执行相同任务的文件,并根据您的使用情况和环境调整值。

此外,请浏览link 1link 2,这将简要介绍如何创建共享和动态库。