Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

Sometimes, when downloading software from the Internet, I find that there is a .deb package ready for either my Debian/Ubuntu and also a tarball to be compiled. In the beginning I would simply use the package for its ease of installation, and wouldn't even dare attempting to compile. Even the sound of it scared me a bit. Nowadays, however, when I have the option I sometimes find myself in a dilemma: is there an unpopular advantage to compiling from source compared with the .deb package? I hope to find out here, thank you.

share|improve this question

2 Answers 2

up vote 5 down vote accepted

The advantage of compiling from source is that you can compile packages with certain flags/options which may be missing/disabled in stock-standard Ubuntu packages. Also, it makes it easy to have multiple versions of the same program installed. Also, you can choose an exact version of a package which may be already removed from or not yet present in Ubuntu repositories (example: I have several versions of Python 2.4.x in my /opt/ directory as I need it to run some older software).

The disadvantage of compiling from source is that, unless you build a .deb and then install it, the normal "./configure; make; sudo make install" procedure keeps Ubuntu's package manager completely unaware of the changes you're making, so you're not going to get any updates for the manually-compiled software; and it's possible that package manager will later override/break your package if you're not careful to install it in a separate location.

In short: Always consider installing from standard Ubuntu repositories first, next consider installing a .deb; only compile from sources if you know exactly why you need to do this.

share|improve this answer
    
I've read also, what the package performance could be different, when it's compiled, kind of better compatibility with current kernel. Didn't benchmarked it personally. –  Fedir Jul 2 '12 at 14:42
    
@Fedir: I'm not sure kernel has anything to do with this, it's rather processor architecture - for example, in the old days many distributions contained packages compiled with 80386 instruction set for maximum compatibility while manually compiling a program for Pentium would enable it to use more efficient instructions. There are whole distributions, such as Gentoo, which are compiled from source on the host machine for this reason. The difference, however, is usually minimal and can only be noticed in very specific applications. –  Sergey Jul 2 '12 at 20:59

It's certainly much easier to install the .deb, although if you can, the best bet is to find it in a repo or a ppa, so that you can be provided updates.

AFAIK there's no real benefit to compiling it yourself unless you plan to alter it first. If you just want the software as is, then install the .deb

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.