Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This question already has an answer here:

Why we have to do separate packaging to applications for 32-bit and 64-bit Ubuntu Operating systems.I mean why some applications are making 32-bit and 64-bit separately and why some applications are not ?

is there any advantage if we made 64-bit packaging for a 64-bit OS ?

share|improve this question

marked as duplicate by guntbert, Kevin Bowen, Braiam, Warren Hill, Eric Carvalho Sep 19 '13 at 12:30

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

There are many reasons to opt out. This is not limited only to applications as it is the same for Operating systems too. I found a documentation in Ubuntu explaining 32bit and 64bit. You may find it here – AzkerM Sep 18 '13 at 5:49
Related:… – Radu Rădeanu Sep 18 '13 at 6:07
up vote 3 down vote accepted

Simply, not all applications are compiled 32bit or 64bit binaries.

  • Most Python libraries scripts are "compiled" at runtime by the native Python binary (which will be running in 32 bit or 64bit mode, depending on the system). Same with Java.
  • Some packages are just resources for another package and can be shared between 32bit and 64bit packages (eg Kernel source packages).

The packages that are separated into architecture are either compiled to machine code, rely too much on architecture-related dependencies or otherwise have architecture-dependent code inside (seems unlikely though).

"Fat" packages and binaries are something that has been toyed with in the past but you're really talking about doubling the size of most binaries and libraries, as well as introducing unforeseen bugs. It's simply not an advantage worth the cost.

It's also worth considering that in most cases developers don't really have to do anything to get architecture specific packages. They'll push them to a build platform like Launchpad and Launchpad will return a bunch of 32bit, 64bit and ARM variant packages.

share|improve this answer
How about some more simplified explanation ? – Raja Sep 18 '13 at 12:59
I don't know how to simplify it any further other than to say "Most packages are architecture dependant but some aren't." – Oli Sep 18 '13 at 13:15
is ti possible to made resources as universal ? I mean same for both 32-bit and 64-bit. – Raja Sep 18 '13 at 13:19
Yeah, there are two architecture options that are independent: all and source. But these are only package-level descriptions. The content needs to be arch-independent too if you're using all. – Oli Sep 18 '13 at 13:21

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