打印机驱动程序不工作

打印机驱动程序不工作

我正在尝试安装 Datacard SP35 卡片打印机驱动程序,安装过程如下(要复制的文件来自这里):

/etc/init.d/cups stop
cp ./install/driver/datacard.ppd /usr/share/cups/model
cp ./install/driver/opd.convs /etc/cups
cp ./install/driver/opd.types /etc/cups
cp ./install/driver/rastertohif /usr/lib/cups/filter
cp ./install/driver/hifspooler /usr/lib/cups/filter
cp ./install/api/opdd /etc/init.d/
cp ./install/api/opdapid /usr/sbin/
cp ./install/api/opdhifd /usr/sbin/
/etc/init.d/cups start

然后我转到 localhost:631 并添加带有驱动程序的打印机

然后(来自手册):

1 在编辑器中打开 opdd 文件。

2 将文件保存为 opdd.[printername],其中 [printername] 为使用 CUPS 浏览器界面指定的名称。

3 从以下行中删除注释 (#):HIF_PORT=59100 API_PORT=59101

4 如果这是第一台卡片打印机,请使用如上所示的默认端口。

5 选择适当的连接类型,并从以下行之一中删除注释 (#): DEVICE_URI=”usb:[serial_number]” DEVICE_URI=”usb:[printer_device_path]” DEVICE_URI=”socket://[printer_ip_addr]:9100” 对于使用 USB 电缆连接的打印机,建议使用“usb:[serial_number]”格式。有关详细信息,请参阅“有关 USB 安装的更多信息”。

6 提供正确的端口值,用括号 [ ] 中的名称表示。

7 保存并关闭文件。

8 设置文件的权限,以便打印机用户可以运行它。对于 SUSE 上名为 card_printer_1 的打印机,示例命令为:chmod 755 opdd.card_printer_1

9 启动双向服务。对于 SUSE 上名为 card_printer_1 的打印机,示例命令为:

/etc/init.d/opdd.card_printer_1 start

这就是问题所在,当我运行时,/etc/init.d/opdd.card_printer_1 start它给了我:

Starting opdd for usb:DA99262 ports 59100 59101: Failure

Unable to launch HIF daemon, see /var/log/opdhifd.59100.log for more information
Unable to launch API daemon, see /var/log/opdapid.59101.log for more information

nano /var/log/opdhifd.59100.log给我:

/usr/sbin/opdhifd: error while loading shared libraries: libusb-0.1.so.4: cannot open shared object file: No such file or directory

nano /var/log/opdapid.59101.log给我:

/usr/sbin/opdapid: error while loading shared libraries: libusb-0.1.so.4: cannot open shared object file: No such file or directory

我安装了 libusb,但它没有改变任何东西。我被困住了,我需要帮助

编辑:

libusb 版本(使用apt-cache search libusb

libusb-0.1-4
libusb-1.0-0

apt-file search libusb-0.1.so.4给我:

libusb-0.1-4: /lib/x86_64-linux-gnu/libusb-0.1.so.4
libusb-0.1-4: /lib/x86_64-linux-gnu/libusb-0.1.so.4.4.4

编辑2:

我尝试复制/lib/x86_64-linux-gnu/libusb-0.1.so.4到其中/usr/sbin/opdhifd,运行时/etc/init.d/opdd.Datacard-sp35 start出现相同的错误,但如果我运行nano /var/log/opdhifd.59100.log它就会发生改变,现在它显示:

/etc/init.d/opdd.Datacard-sp35: line 55: /usr/sbin/opdhifd: Permission denied

我照做了chmod 775 opdd.Datacard-sp35,但还是没用

编辑3:

我解决了“权限被拒绝”错误,chmod 777 opdhifd并将 libusb 复制到 opdapid 中并设置了正确的权限,但现在运行时出现另一个错误/etc/init.d/opdd.Datacard-sp35 start

Starting opdd for usb:DA99262 ports 59100 59101: /etc/init.d/opdd.Datacard-sp35: riga 32: 11857 Errore di segmentazione (core dump creato) /usr/sbin/opdhifd $HIF_PORT $LOCAL_SOCKPATH $DEVICE_URI $HIF_PIDFILE 1>&$HIF_LOGFILE
/etc/init.d/opdd.Datacard-sp35: riga 32: 11859 Errore di segmentazione (core dump creato) /usr/sbin/opdapid $API_PORT $LOCAL_SOCKPATH $API_PIDFILE 1>&$API_LOGFILE
Failure

    Unable to launch HIF daemon, see /var/log/opdhifd.59100.log for more information
    Unable to launch API daemon, see /var/log/opdapid.59101.log for more information

/var/log/opdapid.59101.log 和 /var/log/opdhifd.59100.log 都是空的。

答案1

pstoraster 不再存在。创建指向 gstoraster 的符号链接。这应该至少能解决您的一个问题。

我的问题是 rastertohif 由于“文件太大”问题而失败。

我的 Datacard SP75 Plus 通过 USB 线连接到 Ubuntu 21.10/CUPS。我使用手册中的序列号选项进行了设置。尚未打印,但更接近了。

答案2

如果您运行的是 64 位,则需要添加 i386 架构。

对于 Devuan/Debian 和可能的 ubuntu 执行以下操作: sudo dpkg --add-architecture <arch>

然后,您可以通过在所需软件包的 apt install 命令中添加后缀“:i386”来安装依赖库,例如 libcups。

还有很多工作要做,需要修改数据卡打印机的 ppd,使其能够根据基于 cups pdf 的作业(而不是编写数据卡打印机驱动程序时的 postscript)正确处理。

我现在非常接近了,只需要解决输出后台处理程序文件的问题。

相关内容