假设我有一个构建包的 makefile,并且我只希望在包文件不存在时构建包:
package: foo_0.0.0_amd64.deb
cd foo-0.0.0 && debuild -uc -us
所以我对 debian 构建过程很陌生,但我预计我要么找到一种针对不同架构进行构建的方法,要么我将在本地使用不同的架构,并且该文件名将会改变。所以,我将它设置为一个变量:
major=0
minor=0
update=0
release=amd64
package: foo_${major}.${minor}.${update}_${release}.deb
我有一台机器,uname -r
产量为#.##.#-#-amd64
.amd64
在 unix/linux 中获取它的万无一失的方法是什么?
答案1
在基于 Debian 的系统上,确定适用于包文件名的体系结构的可靠方法是
dpkg --print-architecture
请注意,此处使用与体系结构无关的包all
,您必须提前知道这一点。