CheckInstall: miracle package creator for deb and rpm?

Wow. This really surprised me.

The Ten New Tips for Ubuntu users:
http://www.linux.com/articles/54945

9. Compiling from source

Ubuntu’s package repository is huge, particularly when you factor in packages in the Universe and Multiverse repositories. However, many users find themselves needing to install packages from source, either because they want to use a newer package than is available in the repository, or they want to try something that’s not in the Ubuntu repository at all.

If you want to install packages from source, you can use a few shortcuts to make life easier. First, you’ll probably want to get the build-essential meta-package if you haven’t installed any developer tools. Run sudo apt-get install build-essential; it will grab GCC, the Linux kernel headers, GNU Make, and some other packages that you’ll probably need.

Next, if you’re going to compile a package such as Gaim because a new version is out, you might be able to satisfy the new version’s dependencies with the old version’s dependencies. To do this, grab the package’s build dependencies with sudo apt-get build-dep packagename . That will grab all of the development packages you need to build the package that’s currently available in Ubuntu, and will probably satisfy dependencies for the new version you’re compiling.

Finally, don’t make install when you compile from source — use CheckInstall instead. CheckInstall will create a Debian package and install it for you, so you can remove or upgrade the software more easily later on.

Grab CheckInstall with apt-get install checkinstall. After you’ve run ./configure ; make, just run sudo checkinstall and answer a few simple questions. Note that if you compile packages on AMD64, CheckInstall will select X86_64 as the architecture rather than amd64 — which will cause the package install to fail, since Ubuntu expects amd64 as the architecture rather than X86_64.

By the way, the packages created by CheckInstall also make it easier to deploy the same package on several machines, if you happen to have several systems running Ubuntu. See Joe Barr’s excellent CLI Magic feature on CheckInstall too.

See this about it, where it says it can create either Debian packages, Redhat Packages, or Slackware:

http://www.linux.com/articles/114083

About pauljohn

Paul E. Johnson is a Professor of Political Science at the University of Kansas. He is an avid Linux User, an adequate system administrator and C programmer, and humility is one of his greatest strengths.
This entry was posted in Linux. Bookmark the permalink.