红联Linux门户
Linux帮助
当前位置: 红联Linux门户 > Ubuntu

在Ubuntu下从源代码打包

发布时间:2008-03-17 00:00:53来源:红联作者:Inwind
sudo apt-get install build-essential fakeroot dh-make

tar zxvf wbuscanner-0.1.0.tar.gz
cd wbuscanner-0.1.0
dh_make -e china.newlad@gmail.com -f ../wbuscanner-0.1.0.tar.gz

然后输入S,再按确认
dpkg-buildpackage -rfakeroot

包的命名要符合LINUX的一般规则,文件明-版本号.tar.gz,解压后的文件夹的名字也要和这一样,不然不行的

比如emacs23-20080310.tar.gz解压后是emacs,就必须更改成emacs23-20080310

其中 -e china.newlad@gmail.com是指定维护者的EMAIL,-f是指定源代码的压缩包

输入dh_make ....后会头多个选项,我们一般选择S就可以了

关于包的说明的更改只需要找到debian目录下的control,其中最后2行就是让你填入包说明的

在根目录后有个debian目录,里面有些关于包的配置文件,有control,rules

control是关于包的说明,依赖等,而rules是编译规则,如果编译软件包需要特诉的参数或者其他的编译语句,就可以在这里更该,

比如打包emacs的时候,需要make bootstrap而不是make,这时候在rules的build-stamp中在

# Add here commands to compile the package.
$(MAKE)
改成
$(MAKE) bootstrap

同理,如果configure的时候需要指定些参数,就在config.status那段那里找到.configure 开头的配置语句,在里面加上你自己指定的参数。

./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"

添加自己需要指定的参数 --with-xft --with-x

./configure --with-xft --with-x --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"

更改后回到源代码根目录,dpkg-buildpackage -rfakeroot就可以了
文章评论

共有 0 条评论