User Tools

Site Tools


helpdocs:builddebs

When you have source and just want to compile, without deep dependencies checking

Make sure you have all dependencies:

# apt-get install autotools-dev fakeroot dh-make build-essential

Extract the source file and cd into it. Then use dh_make to create the DEBIAN control files.

# dh_make

You will be presented with some options, choose the most appropriate for your case. Then edit ./DEBIAN/control and make sure the information is correct

Then run the following: (this has to be done as root)

# dpkg-buildpackage -rfakeroot

When you have source and want to compile it with a more complete method

Make sure you have all dependencies:

# apt-get install build-essential autoconf automake autotools-dev dh-make debhelper devscripts fakeroot xutils lintian pbuilder

Extract the source file and cd into it. Then use dh_make to create the DEBIAN control files. You can also pass the source and your email as parameters

# dh_make -e youremail@address -f ../x264-0.1+svn20100107.tar.gz

You will be presented with some options, choose the most appropriate for your case. Then edit ./DEBIAN/control and make sure the information is correct

Then run the following: (this has to be done as root)

# dpkg-buildpackage -rfakeroot

Then run dpkg-depcheck to get an analysis of the dependencies

#dpkg-depcheck -d ./configure

Now edit the ./DEBIAN/control, add the dependencies and fill all the required parameters. With the control file created and filled you can start building the .deb file.

#dpkg-buildpackage -rfakeroot

For Modifying a deb file

If you have a deb file and want to modify something in it so it is more compatible with the CS repo, we will need to extract the required files and modify them. First we extract the elements in the deb file and we place them in a temporary location.

#dpkg-deb -x name-of-package.deb tmpdir

Then we are going to pull the control file that is located in the tmp/DEBIAN/ folder. This is where you will make your changes.

#dpkg-deb --control name-of-package.deb

Now to edit the file

# gedit tmpdir/DEBIAN/control

Once all changes are done, repackage the deb file.

#dpkg -b tmpdir new-name-of-package.deb

source: http://forums.linuxmint.com/viewtopic.php?f=46&t=35136 (Modify a .deb file)

Simple deb file

In the case you require to make a simple deb file there is also a very simple way to do it. Decide on the name of your package. Standard debian notation is all lowercase in the following format: <project>_<major version>.<minor version>-<package revision> For example, you could name your first package: “helloworld_1.0-1” Create a directory to make your package in. The name should be the same as the package name. #mkdir helloworld_1.0-1

Pretend that the packaging directory is actually the root of the file system. Put the files of your program where they would be installed to on a system. #mkdir helloworld_1.0-1/usr #mkdir helloworld_1.0-1/usr/local #mkdir helloworld_1.0-1/usr/local/bin #cp “~/Projects/Hello World/helloworld” helloworld_1.0-1/usr/local/bin

Now create a special metadata file with which the package manager will install your program… #mkdir helloworld_1.0-1/DEBIAN #gedit helloworld_1.0-1/DEBIAN/control

Create a control file.

Package: helloworld
Version: 1.0-1
Section: base
Priority: optional
Architecture: i386
Depends: libsomethingorrather (>= 1.2.13), anotherDependency (>= 1.2.6)
Maintainer: Your Name <you@email.com>
Description: Hello World
 When you need some sunshine, just run this
 small program! 
 (the space before each line in the description is important)

Now you just need to make the package: Code:

#dpkg-deb --build helloworld_1.0-1

source: http://ubuntuforums.org/showthread.php?t=910717

Have fun making deb files 🙂

helpdocs/builddebs.txt · Last modified: 2017/01/14 01:24 by localadmin