我尝试使用从源代码构建单个包dpkg 构建包。在某个时刻dh_auto_install
被调用并运行make install DESTDIR=/somewhere/debian/package-name
然后dh_install
被调用,但只在.
or中搜索,debian/tmp
但不在debian/package-name
!
我得到类似的信息:
dh_install: Cannot find (any matches for) "usr/include/*" (tried in ., debian/tmp)
如何使它们都在同一目录中使用?
(如果我尝试构建多个包,则没有问题)(compat 9)
答案1
我猜测你的源包会构建一个二进制包;IE,你debian/control
有一个Package:
节。在这种情况下,dh_auto_install
将文件安装到debian/package
,然后假设这就足够了,IEdebian/package
完成后,您需要安装的所有文件都会出现在正确的位置dh_auto_install
。
dh_install
主要用于构建多个二进制包的源包:它获取debian/tmp
或下的文件.
并将它们复制到debian/packageX
.
就您而言,由于您正在尝试安装usr/include/*
,我怀疑您根本不需要dh_install
- 您应该在 中找到您想要安装的文件并等待debian/package/usr/include
。但是,如果您在 下安装文件,则usr/include
可能会打包一个库,在这种情况下,您应该更改文件debian/control
以创建多个二进制包(一个用于库,一个用于开发文件),然后dh_auto_install
将安装到debian/tmp
并将dh_install
按照您的预期工作。