1���½�һ��������ʱ�Ĺ���Ŀ¼
mkdir deb
2���½����dz����Ŀ¼
mkdir hello
3����д���ǵij���
��������������Ϥ��helloworld��������
hello.c��������
#include <stdio.h>
int main(int argc, char* argv[])
{
printf("Hello world!\n");
return 0;
}
Makefile�ļ����£�
OBJS=hello.o
CC=gcc -g
all:$(OBJS)
$(CC) -o hello $(OBJS)
clean:
rm -f *.o hello
.PHONY:all clean
4������makeһ�£����Գ�������Ƿ������⣬Ȼ����./hello�������Ƿ���ȷִ��
5�����û���������һ����������������Ǽ��������
6�����������¸ղű�������������make cleanһ��
7����������л��ϼ�Ŀ¼
cd ..
8������һ��ѹ�������Ϊʲô����һ������Ҳ��̫���ף�������˵����һ����Ϊ�˸����ɵ�deb�ļ����жԱȣ�ȷ������deb�ļ�û�д���
��������Ϊ�ļ�����������ļ������а汾��
mv hello hello-1.0
˵�����ļ����������-��������_
tar zcvf hello_1.0.orig.tar.gz hello-1.0
˵����ѹ���������ֱ����ǰ����ļ������汾��
9���������ǵ�hello-1.0Ŀ¼
cd hello-1.0
10��������Ҫdh_make���߽��д��ǰ�����ã�����ǵ�һʹ�����Ȱ�װdh-make
dh-make��װ������
sudo apt-get install dh-make
��װ�ú����ǾͿ���ʹ�ø�������
dh_make -e linux@www �IJ�����Ҳ���Բ��ģ�ִ����һ�������ǽ��ῴ�������������Ǹղ������
��������Ϊ�Լ������䣬����ִ����������
dh_make
������һ�������֣�һ�����ݣ�
www@linux:~/deb/hello-1.0$ dh_make -e linux@www
Type of package: single binary, indep binary, multiple binary, library, kernel module, kernel patch or cdbs?
[s/i/m/l/k/n/b]
11����������s
Maintainer name : zsx
Email-Address : linux@www
Date : Sat, 18 Dec 2010 23:06:25 +0800
Package Name : hello
Version : 1.0
License : blank
Using dpatch : no
Type of Package : Single
Hit <enter> to confirm:
12������س���ȷ��
Skipping creating ../hello_1.0.orig.tar.gz because it already exists
Done. Please edit the files in the debian/ subdirectory now. You should also
check that the hello Makefiles install into $DESTDIR and not in / .
13�����������
14����ʼ���
dpkg-buildpackage
dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor):
dpkg-buildpackage: export CXXFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export FFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export LDFLAGS from dpkg-buildflags (origin: vendor): -Wl,-Bsymbolic-functions
dpkg-buildpackage: Դ��� hello
dpkg-buildpackage: Դ��汾 1.0-1
dpkg-buildpackage: Դ������ zsx <linux@www>
dpkg-buildpackage: �����ܹ� i386
dpkg-source --before-build hello-1.0
fakeroot debian/rules clean
dh clean
dh_testdir
dh_auto_clean
make[1]: ���ڽ���Ŀ¼ `/home/zsx/deb/hello-1.0'
rm -f *.o hello
make[1]:�����뿪Ŀ¼ `/home/zsx/deb/hello-1.0'
dh_clean
dpkg-source -b hello-1.0
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building hello using existing ./hello_1.0.orig.tar.gz
dpkg-source: info: building hello in hello_1.0-1.debian.tar.gz
dpkg-source: info: building hello in hello_1.0-1.dsc
debian/rules build
dh build
dh_testdir
dh_auto_configure
dh_auto_build
make[1]: ���ڽ���Ŀ¼ `/home/zsx/deb/hello-1.0'
gcc -g -g -O2 -c -o hello.o hello.c
gcc -g -o hello hello.o
make[1]:�����뿪Ŀ¼ `/home/zsx/deb/hello-1.0'
dh_auto_test
fakeroot debian/rules binary
dh binary
dh_testroot
dh_prep
dh_installdirs
dh_auto_install
dh_install
dh_installdocs
dh_installchangelogs
dh_installexamples
dh_installman
dh_installcatalogs
dh_installcron
dh_installdebconf
dh_installemacsen
dh_installifupdown
dh_installinfo
dh_pysupport
dh_installinit
dh_installmenu
dh_installmime
dh_installmodules
dh_installlogcheck
dh_installlogrotate
dh_installpam
dh_installppp
dh_installudev
dh_installwm
dh_installxfonts
dh_bugfiles
dh_lintian
dh_gconf
dh_icons
dh_perl
dh_usrlocal
dh_link
dh_compress
dh_fixperms
dh_strip
dh_makeshlibs
dh_shlibdeps
dh_installdeb
dh_gencontrol
dpkg-gencontrol: ����: Depends field of package hello: δ֪���滻���� ${shlibs:Depends}
dh_md5sums
dh_builddeb
dpkg-deb�������½�������“hello”�����ļ�Ϊ“../hello_1.0-1_i386.deb”��
dpkg-genchanges >../hello_1.0-1_i386.changes
dpkg-genchanges: �ϴ������а���������ԭʼ����
dpkg-source --after-build hello-1.0
dpkg-buildpackage: �������أ�����ԭʼ�Ĵ��룩
15������ɹ����л��ϼ�Ŀ¼�Ϳɿ������ǵ�helloworld��deb��
cd ..
ls��ͻῴ�� hello_1.0-1_i386.deb