diff --git a/Makefile b/Makefile
index dbb15d5..852a627 100644
--- a/Makefile
+++ b/Makefile
@@ -137,5 +137,5 @@ $(TARGET): xtrabackup.o $(INNODBOBJS) $(MYSQLOBJS)
 clean:
 	rm -f *.o xtrabackup_* 
 install:
-	install -m 755 innobackupex-1.5.1 $(BIN_DIR)
+	install -m 755 innobackupex-1.5.1 $(BIN_DIR)/innobackupex
 	install -m 755 xtrabackup_*  $(BIN_DIR)
diff --git a/utils/build.sh b/utils/build.sh
index 3f0cee7..ae0f35b 100755
--- a/utils/build.sh
+++ b/utils/build.sh
@@ -21,12 +21,13 @@ function usage()
 {
     echo "Build an xtrabackup binary against the specified InnoDB flavor."
     echo
-    echo "Usage: `basename $0` CODEBASE"
+    echo "Usage: `basename $0` CODEBASE PREFIX"
     echo "where CODEBASE can be one of the following values or aliases:"
     echo "  innodb51_builtin | 5.1	build against built-in InnoDB in MySQL 5.1"
     echo "  innodb55         | 5.5	build against InnoDB in MySQL 5.5"
     echo "  xtradb51         | xtradb   build against Percona Server with XtraDB 5.1"
     echo "  xtradb55         | xtradb55 build against Percona Server with XtraDB 5.5"
+    echo "where PREFIX is abolute path for install location"
     exit -1
 }
 
@@ -92,9 +93,10 @@ function build_xtrabackup()
     echo "Building XtraBackup"
     mkdir $build_dir
     cp $top_dir/Makefile $top_dir/xtrabackup.c $build_dir
+    cp $top_dir/innobackupex $build_dir/innobackupex-1.5.1
 
     cd $build_dir
-    $MAKE_CMD $xtrabackup_target
+    $MAKE_CMD PREFIX=$1 $xtrabackup_target
     cd $top_dir
 }
 
@@ -103,11 +105,36 @@ function build_tar4ibd()
     echo "Building tar4ibd"
     unpack_and_patch libtar-1.2.11.tar.gz tar4ibd_libtar-1.2.11.patch
     cd libtar-1.2.11
-    ./configure
+    ./configure --prefix=$1
     $MAKE_CMD
     cd $topdir
 }
 
+function install_server()
+{
+    echo "Installing the server"
+    cd $server_dir
+    $MAKE_CMD install
+    cd $top_dir
+}
+
+function install_xtrabackup()
+{
+    echo "Installing XtraBackup"
+    echo $build_dir
+    cd $build_dir
+    $MAKE_CMD PREFIX=$1 install
+    cd $top_dir
+}
+
+function install_tar4ibd()
+{
+    echo "Installing tar4ibd"
+    cd libtar-1.2.11
+    $MAKE_CMD install
+    cd $topdir
+}
+
 ################################################################################
 # Do all steps to build the server, xtrabackup and tar4ibd
 # Expects the following variables to be set before calling:
@@ -136,9 +163,15 @@ function build_all()
 
     build_server
 
-    build_xtrabackup
+    build_xtrabackup $1
+
+    build_tar4ibd $1
+
+    install_server
 
-    build_tar4ibd
+    install_xtrabackup $1
+
+    install_tar4ibd
 }
 
 if ! test -f xtrabackup.c
@@ -148,6 +181,10 @@ then
 fi
 
 type=$1
+prefix=$2
+if [ "x$prefix" == "x" ] ; then
+  usage
+fi
 top_dir=`pwd`
 
 case "$type" in
@@ -161,9 +198,10 @@ case "$type" in
 	    --with-plugins=innobase \
 	    --with-zlib-dir=bundled \
 	    --enable-shared \
-	    --with-extra-charsets=complex"
+	    --with-extra-charsets=complex \
+      --prefix=$2"
 
-	build_all
+	build_all $2
 	;;
 
 "innodb55" | "5.5")
@@ -225,7 +263,7 @@ case "$type" in
 
 	build_server
 
-	build_xtrabackup
+	build_xtrabackup 
 
 	build_tar4ibd
 	;;