我在嵌入式系统中遇到了 CUPS 问题,这似乎有点不寻常。 CUPS 拒绝使用过滤器。我没有收到标准的“过滤器失败”消息,它甚至从未尝试使用它们。我已经验证了我的 mime 类型配置和所有内容,并且正在打印到 cups 可以看到并连接的网络打印机(我可以打印原始数据)。我什至从我的工作系统复制了配置,并且仍然可以打印原始数据,但除此之外我得到的任何东西
lp: Unsupported document-format "application/pdf".
日志显示发送文档消息不支持客户端错误文档格式。在工作系统上,我看到它加载了一些过滤器来处理文件,但嵌入式系统的日志上没有显示任何内容。过滤器不会失效,看来 CUPS 甚至从未尝试过它们。
我安装了 cups-filter 软件包,以及 Ghostscript、poppler 等。知道我可能做错了什么吗?我缺少一个关键的编译选项,或者我还没有某种粘合剂?如果重要的话,我正在使用 yocto 为该系统构建软件包,但如果需要,我可以尝试手动交叉编译。
答案1
为将来可能遇到此问题的其他人发布答案。问题是cups 和cups-filters 在cups ServerBin 目录上不一致。就我而言,默认情况下,cups 想要 /usr/libexec/cups,cups-filters 想要使用 /usr/lib/cups。让它们都使用同一目录解决了我的问题。