LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1084|回复: 8

(已解决)第一次制作deb包,遇到问题了

[复制链接]
发表于 2011-7-17 23:39:17 | 显示全部楼层 |阅读模式
大家好,今晚参照网址
http://www.linuxsir.cn/bbs/thread322285.html
http://forum.ubuntu.org.cn/viewtopic.php?f=73&t=232845
制作打了DLP(反吸血)补丁的aMule包,遇到问题
./configure --prefix=/usr --disable-debug --enable-optimize --enable-upnp --enable-geoip --enable-nls --enable-amulecmd --enable-alcc -enable-alc --enable-cas --enable-wxcas --enable-mmap
configure的时候加了这些选项,然后make,之后再dpkg-buildpackage

中间过程没有报什么错,但是结束后产生了很多个deb包,应该产生一个deb才是
amule_2.2.3_amd64.changes
amule-alc-dbg_2.2.3_amd64.deb
amule-i18n-en-gb_2.2.3_amd64.deb
amule-utils_2.2.3_amd64.deb
amule_2.2.3_amd64.deb
amule-cas_2.2.3_amd64.deb
amule-i18n-zh-cn_2.2.3_amd64.deb
amule-utils-gui_2.2.3_amd64.deb
amule_2.2.3.dsc
amule-cas-dbg_2.2.3_amd64.deb
amule-remote-gui_2.2.3_amd64.deb
amuleweb_2.2.3_amd64.deb
amule-cmd_2.2.3_amd64.deb       
amule-remote-gui-dbg_2.2.3_amd64.deb
amuleweb-dbg_2.2.3_amd64.deb
amule-cmd-dbg_2.2.3_amd64.deb
amule-skin-gnome_2.2.3_amd64.deb
amule-wxcas_2.2.3_amd64.deb
amule-common_2.2.3_amd64.deb
amule-skin-kde4_2.2.3_amd64.deb
amule-wxcas-dbg_2.2.3_amd64.deb
amule_2.2.6.orig.tar.gz
amule-daemon_2.2.3_amd64.deb
amule-skin-tango_2.2.3_amd64.deb
amule-xas_2.2.3_amd64.deb
amule-daemon-dbg_2.2.3_amd64.deb
amule-skin-xfce_2.2.3_amd64.deb
amule-alc_2.2.3_amd64.deb
amule-dbg_2.2.3_amd64.deb
amule-theme-chicane_2.2.3_amd64.deb
amule-alcc_2.2.3_amd64.deb
amule-ed2k_2.2.3_amd64.deb
amule-theme-default_2.2.3_amd64.deb
amule-alcc-dbg_2.2.3_amd64.deb
amule-ed2k-dbg_2.2.3_amd64.deb
amule-theme-php-default_2.2.3_amd64.deb

其中还有10多个i18n语言包让我给删掉了,另外源码是2.2.6版本的aMule,但是生成的deb是2.2.3版本的,请问这又是为什么?
发表于 2011-7-18 09:27:38 | 显示全部楼层
一个软件可能会生成多个二进制包

你看一下debian/changelog文件,最上面的一条是不是2.2.3的?生成软件包根据最后一条修改记录来确定版本号。
回复 支持 反对

使用道具 举报

发表于 2011-7-18 09:28:24 | 显示全部楼层
debian官方源里有amule 2.2.6,为什么要自己制作呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-7-18 10:12:57 | 显示全部楼层
因为debian官方的aMule没有反吸血功能,而吸血骡在中国很普遍,但是国外却很少(ubuntu的forum论坛里相关帖子的说法),加了反吸血功能影响aMule的性能,还会多耗资源,所以官方没有加入
回复 支持 反对

使用道具 举报

发表于 2011-7-18 10:37:39 | 显示全部楼层
最终出几个包是由源码 debian 化之后的 rules 决定的,你先要说明自己是从哪里下载的源码。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-7-18 10:55:04 | 显示全部楼层
http://code.google.com/p/amule-dlp/downloads/list
源码是在这里下载的,aMule-2.2.6-DLP4401.tar.bz2,已经打过DLP补丁的源码包
回复 支持 反对

使用道具 举报

发表于 2011-7-18 13:02:44 | 显示全部楼层
上面给出的地址是 amule 的官方源码 + dlp 补丁,然后那个源码刚好被官方做过 debian 化,包切的比较碎。

有两种解决途径。

A. debian 源码 + dlp 补丁
1)用 apt-get source amule 下载 debian 官方源码
2)下载上楼地址中的 dlp 补丁
3)打补丁
4)编译

B. 已包含 dlp 补丁的源码 + debian 官方的 debian 化
1)用 apt-get source amule 下载 debian 官方源码
2)下载上楼地址中的完整源码包
3)用 debian 官方源码解开后包含的 debian 目录,替换 2) 中源码包含的 debian 目录
4)编译

无论用那种方法,得到的结果都应该是 6 个包 amule, amule-common, amule-utils, amule-utils-gui, amule-daemon, amule-gnome-support。
http://packages.debian.org/source/sid/amule

两种方式的区别是先打 debian 补丁还是先打 dlp 补丁,原则上如果 debian 补丁不包含代码修改的话(仅有 debian 化),两个补丁是正交的,结果应该是等价的,实际能不能成功看你运气。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-7-18 17:07:47 | 显示全部楼层
好的,我晚上试试
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-7-18 22:24:26 | 显示全部楼层
AutoXBC,按照你的方案B制作aMule的deb包成功,正好6个包,谢谢!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表