Python's bz2 module not compiled by default
You need libbz2.so (the general purpose libbz2 library) properly installed first, for Python to be able to build its own interface to it. That would typically be from a package in your Linux distro likely to have "libbz2" and "dev" in the package name.
Use your vendor's package management to add the package that contains the development files for bz2. It's usually a package called "libbz2-dev". E.g. on Ubuntu
sudo apt-get install libbz2-dev
There are 2 solutions for this trouble:
option 1. install bzip2-devel
On Debian and derivatives, you can install easily like this:
sudo apt-get install bzip2-devel
option 2. build and install bzip2
In the README file of bzip2 package, it is explained that under certain platforms, namely those which employ Linux-ELF binaries, you have to build an additional shared object file like shown below:
wget http://bzip.org/1.0.6/bzip2-1.0.6.tar.gz
tar xpzf bzip2-1.0.6.tar.gz
cd bzip2-1.0.6
make
make -f Makefile-libbz2_so
make install PREFIX=/path/to/local # /usr/local by default
The critical bit here is the following command:
make -f Makefile-libbz2_so
I've done this and after that tried to build Python again, like shown below:
cd Python-2.7.3
./configure --prefix=/path/to/local
make install