备案:用 dpkg -b 命令手工打包 DEB

编译安装或者制作Deb包
回复
头像
careone
帖子: 805
注册时间: 2007-12-17 21:41
送出感谢: 71 次
接收感谢: 24 次

备案:用 dpkg -b 命令手工打包 DEB

#1

帖子 careone » 2012-06-28 0:14

方法一、用 dpkg -b 命令手工打包 DEB (非正规打包方式)

有网友提到这个问题,存档备查。
用 dpkg -b 命令手工打包 DEB
代码:
1 下载一个其他的 deb 软件包,解压缩后得到2个压缩包: data.tar.gz , control.tar.gz;
2 解压 control.tar.gz ,得到 control 文件(在这个文件中修改软件包依赖关系),删除另外的 md5sums 文件;
3 date.tar.gz 解开后,按里面的目录结构,放入自己要加入的文件;
4 建议把自已的可执行文件放在 /usr/local/bin/ 目录下(私人制作的可执行文件,建议放在 local 文件夹内,不会与 DEB 系统中自带的文件重名造成冲突或混乱;

----------------
近来我没有在linux平台上工作,以后有机会,可以帮你打包deb
# /root/deb-src/ 目录下,按安装好后的目录结构位置,放置程序和软件包需要加入的原始文件;
sudo mkdir -vp /root/deb-src/mysoftware/usr/local/bin/ 这里放脚本文件
sudo mkdir -vp /root/deb-src/mysoftware/DEBIAN/ 这里放 control 文件

sudo mkdir -vp /root/deb-src/mysoftware/usr/share/pixmaps/ 这里放程序图标,建议png格式;
sudo mkdir -vp /root/deb-src/mysoftware/usr/share/applications/ 这里放程序快捷方式 xxx.desktop 文件,可参照其它类似文件;

# 把文件所有者改为 root
sudo chown root.root -R /root/deb-src/mysoftware

# 注1:如果是从 Windows 下复制过来的 txt 文本文件,或者图片文件,可能会带有可执行权限(755),
需要把这些文件的权限改为 644 (不可执行)。具体操作这里就不多说了。

# /root/deb-ok/ 目录下放打好的 deb 软件包文件
sudo mkdir -vp /root/deb-ok/
cp my-run-file /root/deb-src/mysoftware/usr/local/bin/my-run-file

cd /root/deb-src/mysoftware/
sudo dpkg -b . /root/deb-ok/mysoftware_1.0_all.deb

或者:
使用带 -Zgzip 参数的 dpkg-deb 命令,强制指定为 tar.gz 压缩格式
(较新版本的 dpkg 命令中,默认为 LZMA 的 tar.xz 的压缩格式,
这样的 DEB 包可能无法在旧版本的 Debian/Ubuntu 上无法直接安装 DEB 包)

sudo dpkg-deb -Zgzip -b . /root/deb-ok/mysoftware_1.0_all.deb
打包完成后,再解压上面打出的deb软件包,检查以上文件和文件夹的权限,
文件夹权限一般为777,可执行文件xxx 权限为 755;文件夹和文件所有者都是root;
有异常,修复后重新打包。

control 文件里的参数,dpkg 的相关命令,baidu即可。
方法二、专业的 DEB 打包方式:

Debian新维护人员手册的完全中文版
http://www.linuxdeepin.com/forum/22/3953
Debian 新维护人员手册2010-12-21.zip
(904.85 KiB) 下载 269 次
Debian新维护人员手册的完全中文版.jpg
Debian新维护人员手册的完全中文版.jpg (20.01 KiB) 查看 4456 次
来源: http://www.linuxdeepin.com/forum/22/3953
上次由 careone 在 2017-02-10 11:11,总共编辑 3 次。
魁拔不死,天下不宁。
魁拔既死,天下不平。
--------------
Careone <emacslocale^126.com>
https://sourceforge.net/projects/emacslocale/files/
头像
guyanqiu
帖子: 360
注册时间: 2009-05-05 23:42
送出感谢: 5 次
接收感谢: 10 次

Re: 备案:用 dpkg -b 命令手工打包 DEB

#2

帖子 guyanqiu » 2012-06-28 0:17

楼主这样写比较好,搜索很容易搜索到。
步骤简单。
十分感谢!
-----------------------
在迷茫中追逐,在追逐中迷茫……
-----------------------
回复

回到 “编译或打包”