Makefile 试图覆盖`/var/backups/infodir.bak';,也在x包中
编译软件时,我总是Makefile 试图覆盖`/var/backups/infodir.bak';,也在x包中,makefile,debian,configure,checkinstall,Makefile,Debian,Configure,Checkinstall,编译软件时,我总是/配置和&生成和&检查安装-D生成安装以生成软件 现在我在使用checkinstall时遇到了一个问题,即我得到了错误 正在尝试覆盖`/var/backups/infodir.bak',它也在 文件包libtasn1-3.2” 我还创建了libtasn1-3.2,使用/configure和make&检查安装-D make安装 我试图删除文件/var/backups/infodir.bak,但仍然出现错误。 有人知道我如何解决这个问题吗 Building Debian packa
/配置
和&生成
和&检查安装-D生成安装
以生成软件
现在我在使用checkinstall时遇到了一个问题,即我得到了错误
正在尝试覆盖`/var/backups/infodir.bak',它也在
文件包libtasn1-3.2”
我还创建了libtasn1-3.2,使用/configure
和make
&检查安装-D make安装
我试图删除文件/var/backups/infodir.bak,但仍然出现错误。
有人知道我如何解决这个问题吗
Building Debian package...OK
Installing Debian package... FAILED!
Failed to install the package
Do you want to see the log file? [y]: y (Reading database ... dpkg:
serious warning: files list file for package `squeezecenter-readynas'
missing, assuming package has no files currently installed. 30739
files and directories currently installed.) Unpacking libgcrypt-1.5.1
(from .../libgcrypt-1.5.1_1.5.1-1_sparc.deb) ... dpkg: error
processing
/c/backup/zarafa/libgcrypt-1.5.1/libgcrypt-1.5.1_1.5.1-1_sparc.deb
(--install): trying to overwrite `/var/backups/infodir.bak', which is
also in package libtasn1-3.2 dpkg-deb: subprocess paste killed by
signal (Broken pipe) Errors were encountered while processing:
/c/backup/zarafa/libgcrypt-1.5.1/libgcrypt-1.5.1_1.5.1-1_sparc.deb
在debian中,禁止两个软件包安装同一个文件
因此,每当您尝试安装一个包含文件“/path/to/foo”的包,而另一个已经安装的包包含文件“/path/to/foo”时,就会出现冲突,从而出现错误
维护人员的一部分工作是确保此类事件不会发生
- 或者通过设置两个包之间的显式冲突(因此您甚至不能同时标记两个包进行安装)
- 或者在一个包(或两个包)中重命名文件并相应地调整软件
- 或者通过阻止一个(或两个)软件包安装此类文件(例如,在实际不需要安装文件的情况下)
checkinstall
是一个“穷人”的包维护工具,因为它使从“makeinstall”创建包变得非常容易。
由于它是一种自动化工具,它无法取代维护人员的工作和复杂性。(否则我们将不再需要任何debian维护人员;只需将源代码包上载到某个构建服务器并在其上运行“checkinstall”)
因此,出现问题的原因是,您安装的软件包维护不当(或者更确切地说,是自动创建的,因此根本没有维护)。
删除有问题的文件不起作用的原因是,包管理不仅仅是下载并提取归档文件。除此之外,它还维护数据库中已安装文件的列表,该列表表示您已经安装了/var/backups/infodir.bak
(无论文件是否实际位于硬盘上)。。。导致你看到的冲突
因此,解决问题的办法是,在维护上投入更多的时间
在任何情况下,您都应该调查为什么这两个“包”都需要/var/backups/infodir.bak
(以及它们是否需要它)
您可以通过以下方式从checkinstall
中省略某些文件
checkinstall --exclude /var/backups/infodir.bak -D make install
我不能说这是否会破坏你们的包裹