Ubuntu-20.04LTS构建deb包
作者:互联网
deb包安装起来真的很方便,但有的时候只有源代码,或者是提供的deb包版本太旧。
如果源码编译安装,管理和卸载不是很方便。这时我们可以自己构建deb包,非常好用。
流程
以tree为例,
sudo apt-cache showsrc tree
查询当前镜像站点中的源代码包。
源码包中通常包含3个文件,分别以dsc,orig.tar.gz和diff.gz为后缀名。使用”apt-get source”命令来获取源码包,它会将源码包下载到用户当前目录,并在命令执行过程中,调用dpkg-source命令,根据dsc文件中的信息,将源码包解压到同名目录中,应用程序的源代码就在这里面。
引用原文链接
apt source tree
获取源代码包。(要确保你的dokg-source
命令能正确运行)
apt build-dep tree
安装具有依赖关系的软件包
cd tree-1.8.0.0
dpkg-buildpackage
编译。
然后
$ cd ..
$ ls
tree-1.8.0 tree_1.8.0-1.debian.tar.xz
tree_1.8.0-1_amd64.buildinfo tree_1.8.0-1.dsc
tree_1.8.0-1_amd64.changes tree_1.8.0.orig.tar.gz
tree_1.8.0-1_amd64.deb tree-dbgsym_1.8.0-1_amd64.ddeb
tree_1.8.0-1_amd64.deb
就是我们要的了。
报错处理
在我的环境下,dpkg-buildpackage
会报错:
dpkg-shlibdeps: 错误: no dependency information found for /lib/x86_64-linux-gnu/libc.so.6 (used by debian/tree/usr/bin/tree)
解决方案:
进入
vim tree.1.8.0/debian/rules
加上:
override_dh_shlibdeps:
dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
参考博客:
1.Linux下如何自己编译源代码(制作成可以安装的.deb文件)
2.dpkg-shlibdeps:错误:未找到依赖项信息
标签:LTS,tree,1.8,源码,deb,源代码,20.04,dpkg 来源: https://blog.csdn.net/qq_51470638/article/details/123592165