[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ next ]

Debian Programmers' Manual
Chapter 1 - Introduction and what you need


1.1 Introduction

This manual documents the process of making a Debian package. It is assumed that you have at least familiarized yourself with Debian Policy Manual and Debian Packaging Manual. You also need them at your disposal, as they are often referenced here.


1.2 Packages you need installed to get started

The following packages need to be present on your system in order to build a debian package.

From the devel section:

binutils
The programs in this package are used to assemble and link object files--the stuff programs are made of.
gcc
This is the GNU C compiler. Most Linux programs are written in the C programming language.
cpp
This is the C preprocessor.
libc5-dev
These are the C libraries and header files gcc needs to link with to create object files.
make
Typically creating a program will take several steps. Rather than having to type out the same commands over and over again, you can use the make program to automate the process.
dpkg-dev
This package contains the tools needed to create Debian archives. It also contains the Debian Programmers and Policy manuals.
debmake (optional)
This is a higher level set of tools for creating Debian packages. It makes the whole process tremendously easier.

From the admin section:

sudo (optional)
Sudo allows a user to become root temporarily. (In a way controlled by the system administrator of course) You need root access during the package building process. If you do have root access you don't really need this package but you might want it any way because for security reasons you should do only the most essential actvities while logged in as root.
cpio
This is an archiver like tar or zip. Dpkg-dev needs it.

From the misc section:

file
This handy program can determine what type a file is. Dpkg-dev needs it.
patch
Patch will take a file containing a difference listing produced by the diff program and apply it to an original fan, producing a patched version.
hello
This is an example package for debian developers. I will often refer to it in this document.

Also you need the encryption package pgp to digitally "sign" your package. This is especially important if you want to distribute your package to other people. However due to a rather wacky U.S. law, you cannot simply download this from your nearest Debian ftp site. The ftp site will however have a file called README.non-us in its root directory which will tell you how to get a copy of pgp.


[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ next ]

Debian Programmers' Manual


17 June 2006

Igor Grobman [email protected]