【发布时间】:2015-04-10 12:05:36
【问题描述】:
我需要使用 Qt 中的 CUPS API 来检测和安装打印机。问题是我似乎无法让 Qt 检测到 cups.h 头文件。 到目前为止,我尝试过(使用 和“”):
#include <cups/cups.h>
和
#include </usr/local/include/cups/cups.h>
在 .pro 文件中我也尝试添加:
INCLUDEPATH += /usr/local/include/cups
每次我得到“cups/cups.h:没有这样的文件或目录”。所以任何人都可以提供一个最小的例子或一个 HOWTO 来展示如何在 Qt 应用程序中包含和使用 CUPS。
谢谢!
PS:我不确定它是否相关,但我可能应该补充一点,我为树莓派交叉编译了 Qt。
【问题讨论】:
-
你真的有
/usr/local/include/cups/cups.h吗?考虑到显式路径显然失败,您使用qmake似乎并不相关。你的 C++ 编译器就是找不到那个文件。 -
/usr/local/include/cups/cups.h 存在于我的开发机器上,但不存在于目标(Raspberry Pi)上。我是否必须与 Qt 一起交叉编译 CUPS 才能使用它?
-
你必须在你的 sysroot 中安装 cups 头文件,看起来像。
-
谢谢!将标头添加到 sysroot 是可行的,但现在我得到“对 `cupsGetDefault' 的未定义引用 ...”。我发现它一定缺少一个库,所以我在我的项目文件中添加了“LIBS += -lcups”,但它说“找不到 -lcups”!
-
图书馆不是魔法。它只是实现,即代码。而且您需要在 RPi 上运行该代码,因此最好是 RPi 代码。在图书馆里