在基于命令行的QT插件构建中包含库

Including library in command-line based buidling of QT Plugin

本文关键字:插件 构建 包含库 QT 命令行      更新时间:2023-10-16

我想使用 Open62541 库的安全补丁为 QT 5.13.2 构建 QT Opc Ua 插件。

到目前为止,我设法安装了mbedTLS库,并在nmake之前的qmake步骤中被识别。然后 Nmake 遇到了一个问题:

mbedcrypto.lib(entropy_poll.obj(:错误LNK2019:函数_mbedtls_platform_entropy_poll中引用未解析的外部符号__imp__CryptAcquireContextA@20

据我了解这个问题,这是因为我的链接器? 找不到这些函数所在的库,这将是 advApi32.lib

尽管有很多关于如何在Visual Studio或Qt Creator中包含此库的教程,但我需要从命令行执行此操作(或通过操作QtOpcua目录中的圆顶文件(,这怎么可能?

我已经尝试将LIBS += -ladvAPI32添加到我能找到的所有 .pro 文件中,但它根本没有帮助。

我通过将AdvAPI32.lib添加到win32:open62541.pri文件的一部分来修复它。我不知道为什么在这个地方会这样,但我很高兴它现在有效。

这似乎是一个路径问题。在 qtopcua.pro 文件中,您可以尝试使用"LIBS +="选项添加 advapi32 库的绝对路径,然后运行 qmake。