我有一份编译打印机驱动程序的配方,并且在do_install中运行几行简单的代码。
do_install() {
install -d ${D}${libdir}/cups/filter
install -m 755 ${B}/src/rastertoprinter ${D}${libdir}/cups/filter/
install -d ${D}${sysconfdir}/cups/ppd
install -m 755 ${B}/../rastertoprinter/printer_name.ppd ${D}${sysconfdir}/cups/ppd/
}
为了编译源代码,我需要在DEPENDS中添加cups,并且在RDEPENDS中也需要添加cups,因为操作系统需要安装cups才能打印。
由于打印机驱动程序不是公开的,因此我将其重命名为rastertoprinter并更改了路径名称。
基本上,我只需要创建或确保目录/usr/lib/cups/filter存在,并将rastertoprinter程序复制到该目录中。我还需要创建或确保目录/etc/cups/ppd存在,并将.ppd文件复制到该目录中。
前两行运行良好,但第三行会抛出以下错误:
file /etc/cups conflicts between attempted installs of printername-r0.corei7_64 and cups-2.2.2-r0.corei7_64
file /etc/cups/ppd conflicts between attempted installs of printername-r0.corei7_64 and cups-2.2.2-r0.corei7_64
我不明白为什么这两个命令都不能创建这个目录并往里面放东西?奇怪的是,我可以正常地使用第一个命令创建 /usr/lib/cups/filter 目录。