Chinaunix首页 | 论坛 | 博客
  • 博客访问: 504214
  • 博文数量: 76
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 1534
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-10 16:28
文章分类
文章存档

2010年(1)

2009年(3)

2008年(72)

我的朋友

分类: LINUX

2008-07-02 15:52:41

1.diff的使用
diff可以完成比较功能,生成补丁文件
格式::diff [option] oldfile newfile
常用的option选项有:
-r         对目录进行递归比较
-u        输出统一格式
-N        比较目录时若一个目录文件缺失,视之为空文件
-a        将所有文件视为文本文件,逐行比较
$diff -u postlogin.c postlogin-new.c >test.patch

2.patch的使用
patch -pnum 其中num表示路径的处理方法,它将改变相对路径。假设patchfile中的文件路径是
src/vsftpd-2.0.1/postlogin.c

-p0          src/vsftpd-2.0.1/postlogin.c
-p1          vsftpd-2.0.1/postlogin.c

若无-p参数使用无路径信息的文件名postlogin.c。
如果patch失败,patch会把成功的行打上补丁,失败的行存为以.rej为后缀的文件,并生成原文件的备份,如果成功则不生成备份。
注意:运行patch所在的目录应该与用diff生成补丁的时候一致。若目录不一致请使用-p参数改变相对路径。

3.rpmbuild的使用
.src.rpm的源码包安装后将会在/usr/src/中展开源码文件,下面简单说一下如何使用rpmbuild重构修改后的源码。方法很简单:进入SPECS目录,里面有软件对应的包信息文件,如果添加了补丁做必要的修改,然后使用

rpmbuild -ba test.spec

阅读(1226) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~