您尚未登录。

#1 2022-08-26 17:55:11

lwalwg
会员
注册时间: 2021-11-15
帖子: 15

DCP 7180 RPM打印机驱动安装,求助

已经按照手册修改了部分代码,自己水平实在有限,看不懂手册,求助看看哪里不对。看错误提示是这个srcdir有问题,没找到这个srcdir到底是说明什么作用的。

pkgname=brother-dcp7180dn-cups-bin
pkgver=3.2.0
pkgrel=1
pkgdesc="CUPS wrapper for Brother dcp7180dn printer"
url="http://www.brother.com"
license=('GPL')
install="brother-dcp7180dn.install"
arch=('i686' 'x86_64')
depends_x86_64=('lib32-glibc')
md5sums=('39b4341b8f1ff0fe8cad908bccbd0509'
         'af9440da1b53528ea722dff26d5355a9')

source=(
  https://d.brother-movie.com/DCP7180DN/d … 1.i386.rpm
  https://d.brother-movie.com/DCP7180DN/d … 1.i386.rpm
 
)

prepare() {
  cd "$srcdir/usr/" || return 1


  cd "$srcdir" || return 1
  "$srcdir/usr/local/Brother/cupswrapper/cupswrapperDCP7180DN-3.2.0"
}

package() {
  mkdir -p "$pkgdir/usr/share"
  cp -R "$srcdir/usr/bin" "$pkgdir/usr"
  cp -R "$srcdir/usr/lib" "$pkgdir/usr"
  cp -R "$srcdir/usr/local/Brother" "$pkgdir/usr/share/brother"

  rm "$pkgdir/usr/share/brother/cupswrapper/cupswrapperDCP7180DN-3.2.0"
  rm "$pkgdir/usr/share/brother/inf/setupPrintcap"

  install -m 644 -D ppd_file "$pkgdir/usr/share/cups/model/brother-DCP7180DN-cups-en.ppd"
  install -m 755 -D wrapper "$pkgdir/usr/lib/cups/filter/brlpdwrapperDCP7180DN"
}

进入文件,makepkg -si 报错,我又新建了.install文件

post_install() {
  __port2=`lpinfo -v | grep -i 'usb://Brother/dcp7180dn' | head -1`
  if [ "$__port2" = '' ];then
          __port2=`lpinfo -v | grep 'usb://' | head -1`
  fi
  __port=`echo $__port2| sed s/direct//g`
  if [ "$__port" = '' ];then
          __port="usb:/dev/usb/lp0"
  fi

  lpadmin -p HL2030 -E -v $__port -P /usr/share/cups/model/brother-DCP7180DN-cups-en.ppd
  echo "If CUPS is not running now, start it after installation"
  echo "and type command:"
  echo "  lpadmin -p DCP7180DN -E -v URL -P /usr/share/cups/model/brother-DCP7180DN-cups-en.ppd"
  echo "where URL can be found using command:"
  echo "  lpinfo -v | grep -i 'Brother'"
  echo "You can also register new printer using web interface at:"
  echo "  http://localhost:631/"
}

post_upgrade() {
  /bin/true
}

pre_remove() {
  lpadmin -x DCP7180DN
}


op=$1
shift

$op "$@"


现在提示:
makepkg -si
==> 正在创建软件包:brother-dcp7180dn-cups-bin 3.2.0-1 (2022年08月26日 星期五 17时51分12秒)
==> 正在检查运行时依赖关系...
==> 正在检查编译时依赖关系
==> 获取源代码...
  -> 找到 dcp7180dncupswrapper-3.2.0-1.i386.rpm
  -> 找到 dcp7180dnlpr-3.2.0-1.i386.rpm
==> 正在验证 source 文件,使用md5sums...
    dcp7180dncupswrapper-3.2.0-1.i386.rpm ... 通过
    dcp7180dnlpr-3.2.0-1.i386.rpm ... 通过
==> 正在释放源码...
  -> 正在解压缩 dcp7180dncupswrapper-3.2.0-1.i386.rpm,使用 bsdtar
  -> 正在解压缩 dcp7180dnlpr-3.2.0-1.i386.rpm,使用 bsdtar
==> 正在开始 prepare()...
/home/jyzx/Downloads/dcp7180cupsrpm/PKGBUILD: 第 24 行:cd: /home/jyzx/Downloads/dcp7180cupsrpm/src/usr/: 没有那个文件或目录
==> 错误: 在 prepare() 中发生一个错误。
    正在放弃...

最近编辑记录 lwalwg (2022-08-26 17:56:34)

离线

#2 2022-08-27 06:52:29

KirisameMarisa
会员
注册时间: 2022-01-30
帖子: 39

Re: DCP 7180 RPM打印机驱动安装,求助

应该不是直接srcdir/usr,而是srcdir/档案名/usr吧。我建议你检查一下src目录


霧雨 魔理沙です。

离线

#3 2022-08-28 12:37:16

Watermelon.Rei
会员
注册时间: 2021-12-29
帖子: 91

Re: DCP 7180 RPM打印机驱动安装,求助

按照你之前的回复,7045的包可以使用,建议去更改7045的PKGBUILD,或者使用类似产品线的其他aur:https://aur.archlinux.org/packages/brother-dcp7065dn,wiki里的作为模板的aur不一定适合你的产品,它原来的意图是解包驱动安装包并把里面的data.tar.gz打包为安装包。这是模板的包安装的文件清单:

Gvuso.jpg

这是brother-dcp7065dn AUR包的安装文件清单:

CE30E.jpg

作为模板的PKGBUILD没有为CUPS安装pdd和filter文件,只是简单将驱动文件放置到/opt中。



错误发生在 cd "$srcdir/usr/" || return 1 这一行上,$srcdir是为了给打包准备的临时目录,该目录在你PKGBUILD文件所在位置的src文件夹。其他发行版的安装包文件会解包并放在该文件目录中,wiki模板的src是这样的:

CEBoJ.jpg

而你的PKGBUILD是这样的:

CEbew.jpg

也就是说hl2030的驱动包将文件安装到了/usr目录,而你的dcp7180却把文件安装到了/opt中,脚本当然提示找不到usr目录。


这个打包Brother驱动的wiki内容有些简略,确实容易被坑,不要完全按照指示操作。总结一下还是建议先试验deb驱动文件,改相同产品线的AUR,不论你说的7045还是我提到的7065dn,驱动文件目录结构应该会比较接近,不太容易出错。

最近编辑记录 Watermelon.Rei (2022-08-28 12:56:26)

离线

#4 2022-09-16 07:03:38

lwalwg
会员
注册时间: 2021-11-15
帖子: 15

Re: DCP 7180 RPM打印机驱动安装,求助

疫情影响,一直未登录,感谢各位回复。
7045确实可以打印,但是有个缺陷,第一张纸或者到windows第一张会出一张乱码在顶部的空白纸。

一直以为wiki是很强大的,还是自己学习不够深入。
感谢解疑答惑,有时间继续测试。

离线

页脚