ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Ubuntu-20.04LTS构建deb包

2022-03-19 12:32:11  阅读:261  来源: 互联网

标签:LTS tree 1.8 源码 deb 源代码 20.04 dpkg


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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有