Raspberry pi 上的打印机:Yaourt 无法构建驱动程序

Printer on Raspberry pi : Yaourt can't build the driver

我正在尝试将我的 hp laserjet p1006 打印机与我的 raspberry pi(archlinux、Linus 3.18.9)一起使用。 我已经设置了 cups 服务器,我可以通过 Web 界面管理我的打印机,并将我的用户添加到 sys 和 lp 组。 我可以通过此界面“安装”我的打印机,在 hpcups 和 hpijs(none 作品)中选择一个“型号”(驱动程序?)。 我可以管理我的打印机,但是当我尝试用它打印东西时,它以我的 cups 界面中的“过滤器失败”错误结束,并且我的打印机没有反应。 我没有找到 PPD 文件(在 openprinting.org 上,他们说:“PPD 文件(以及生成它们的 Foomatic XML 文件)随驱动程序 (foo2xqx) 一起提供,因此我们不提供 PPD在 OpenPrinting 网站上。”)。

我尝试通过在 yaourt 中安装 foo2zjs(它包含在其中)来安装 foo2xqx。 我还编辑了每个 PKGBUILD,将架构('i686' 或 'x86_64')替换为 'armv6h'。 但它无法构建和安装依赖项:foomatic-db-foo2zjs。 这是 yaourt 的输出:

==> ERROR: Failure while creating working copy of foomatic-db-foo2zjs bzr repo
    Aborting...
==> ERROR: Makepkg was unable to build foomatic-db-foo2zjs.

我也尝试添加更多交换,但没有解决任何问题。

我能做什么?

感谢您的帮助!

编辑:我尝试将 space 添加到 /tmp(正如本教程所解释的那样:http://www.boxtutorials.com/how-to-increase-the-size-of-disk-space-tmp-usrtmpdsk-partition-in-linux-server.html)并且它更进一步。

但我还有一个问题:

如果我尝试使用 yaourt 构建包:

我在 PKGBUILD 文件中遇到错误:

pkgname=foomatic-db-foo2zjs
arch=('i686' 'x86_64' 'armv6h')
_snapdate=20141011
pkgver=${_snapdate}
pkgrel=1
epoch=3
license=('GPL' 'custom')
pkgdesc="Foomatic - The collected knowledge about printers, drivers, and driver options in XML files, used by foomat\
ic-db-engine to generate PPD files. Rebuilt for use with foo2zjs."
depends=('perl' 'libxml2')
conflicts=('foomatic-db-ppd' 'foomatic-db-hpijs' 'foomatic-db' 'foo2zjs-testing')
provides=('foomatic-db-hpijs' 'foomatic-db')
makedepends=('cups' 'perl' 'libxml2' 'enscript' 'perl' 'net-snmp' 'bash' 'bzr')
source=(foomatic-db-foo2zjs::bzr+http://bzr.linuxfoundation.org/openprinting/foomatic/foomatic-db/)
url="http://www.linuxprinting.org/foomatic.html"
md5sums=('SKIP')

package() {
   cd ${srcdir}/${pkgname}
   bzr revno
   echo $pkgver
   # here are the problems :
   # I tried chmod calls both with and without "sudo"
   # chmod 777 ./make_configure
   ./make_configure
   # chmod 777 ./configure
   ./configure --prefix=/usr
   make DESTDIR=${pkgdir} install
   install -v -Dm644 ${srcdir}/${pkgname}/COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING

   # foo2zjs provides different versions of the following files

   rm ${pkgdir}/usr/share/foomatic/db/source/driver/foo2hiperc.xml
   # some other rm calls
   rm ${pkgdir}/usr/share/foomatic/db/source/printer/HP-LaserJet_1005.xml
}

我得到以下信息:

PKGBUILD: line 24: ./make_configure: Permission denied
==> ERROR: A failure occurred in package().
    Aborting...
==> ERROR: Makepkg was unable to build foomatic-db-foo2zjs.

我试图在此文件中添加对“sudo chmod”的调用以获取权限,但它不起作用。

如果我尝试自己构建包(使用 makepkg):

它 returns :

  -> Creating working copy of foomatic-db-foo2zjs bzr repo...
bzr: ERROR: Not a branch: "/home/vmonteco/build/foomatic-db-foo2zjs/foomatic-db-foo2zjs/.bzr/branch/": location is a repository.
==> ERROR: Failure while creating working copy of foomatic-db-foo2zjs bzr repo
    Aborting...

有什么想法吗?

顺便说一下,我还找到了一个教程(法语,对不起),这正是我要搜索的内容(相同的外壳,相同的设备,相同的包装......),我把它放在这里以防万一帮助其他人,即使是非法语国家的人也可以只用命令。 http://www.azurs.net/carnet/2013/09/raspberry-pi-serveur-impression-imprimante-hp-laserjet-p1006/ 我在最后两个步骤“L'AUR sans peine, mais avec yaourt”(“AUR without troubles, but with yaourt”)和“Empaquetage avec makepkg”(“packaging with makepkg”)卡住了(见上面的两个错误) ).我都试过了,但都失败了。

我终于修好了。

我概括一下: 我添加了 swap 并做了一个更大的 /tmp 来摆脱 space 问题。 (我遇到的第一个问题).. 但是我还必须在没有 "noexec" 选项的情况下挂载 /tmp,以允许 yaourt 到 运行 PKGBUILD 文件(如这里所建议的:https://bbs.archlinux.org/viewtopic.php?id=189625)。

我在安装带有新驱动程序的 cups 打印机时仍然遇到问题(过滤器失败),所以在我将此 post 标记为 [=24 之前,我会等待找到解决方案=]. :)

编辑: 我终于用 hp-setup 工具(hp-lip 包)重新安装了我的打印机并且它工作了。 :)

希望对大家有所帮助!