如何在 Qt 中包含外部库

How to include external libraries in Qt

我想要一些关于如何在 Linux 环境中将外部库添加到 Qt C++ 项目的基本解释 我通过两种方式安装了一个名为 podofo 的库: - 使用 apt-get install libpodofo 安装 - 安装源代码并构建它

之后我在我的 Qt 项目的 .pro 文件中添加:LIBS += -lpodofo

我如何选择他是与第一个合作还是与第二个合作? 我应该如何在我的项目中添加一个包含大量 .jar 文件的外部库?

我想它可能是 运行 环境中的东西,但我还是不明白。我尝试更改它,但在安装 Qt 的文件中手动复制库似乎更好。

与 Linux 上的大多数图书馆一样,podofo 安装了一个 pkg-config 文件。该文件名为 libpodofo-0.pc。 qmake 对此有 built-in 支持,因此您需要做的就是将其添加到您的项目文件中:

PKGCONFIG += libpodofo-0

(请注意,要使其生效,您可能需要将 link_pkgconfig 添加到 CONFIG 行。)

不要向 LIBS 添加任何内容。 qmake 将调用 pkg-config 并自动添加所需的编译器和链接器标志。具体来说,它将为链接添加正确的 -l 标志,为编译添加正确的 -I 标志(通常为 -I/usr/include/podofo)。所以当你在你的代码中包含 podofo headers 时,不要使用 #include <podofo/podofo.h>。在可能使用不同目录名称安装 podofo headers.

的系统上构建时,使用 #include <podofo.h> 保持代码的可移植性

确保 pkg-config 工具确实安装在您的系统上。 pkg-config --version 应该打印类似 0.29.1 的内容。相反,如果找不到该命令,则安装 Linux 发行版的 pkg-config 软件包。