June 30, 2012

Installing the Boost Libraries 1.50 on Ubuntu 12.04 precise

The version 1.50 of the Boost Libraries has been released . Following are the instructions to install a private copy of the Boost Libraries, including ICU support, on Ubuntu 12.04 (precise).

Setup

I have chosen to download the source packages in ~/Software, and to install in ~/usr but you can also use any other directories.

Make the required directories.

mkdir ~/Software
mkdir ~/Software/Boost
mkdir ~/Software/ICU
mkdir ~/usr

Requirements

Check the required packages.

sudo apt-get install build-essential
sudo apt-get install g++
sudo apt-get install python-dev
sudo apt-get install libzip-dev
sudo apt-get install libbz2-dev

Download and install the ICU Libraries

We will install a private version of the ICU Libraries, I have chosen the ~/usr directory for the installation but can be any other.

Download and decompress the ICU Libraries source package.

cd ~/Software/ICU
wget http://download.icu-project.org/files/icu4c/49.1.2/icu4c-49_1_2-src.tgz

tar -xvf icu4c-49_1_2-src.tgz

Configure, build and install the ICU Libraries.

cd icu/source
./runConfigureICU Linux --prefix=${HOME}/usr --enable-static
make
make install

Download the Boost Libraries

Download and decompress the Boost Libraries source package.

cd ~/Software/Boost
wget -O boost_1_50_0.tar.bz2 http://sourceforge.net/projects/boost/files/boost/1.50.0/boost_1_50_0.tar.bz2/download

tar -xvf boost_1_50_0.tar.bz2

Configure the Boost Libraries

Declare the ICU_PATH environment variable.

export ICU_PATH=${HOME}/usr

Configure the Boost Libraries build system.

cd boost_1_50_0
./bootstrap.sh

Edit the generated project-config.jam file.

gedit project-config.jam

Make the required changes to the project-config.jam file. I have highlighted the required changes, note that you have to substitute the directory /home/your-user-name with your real home directory path.

# Boost.Build Configuration
# Automatically generated by bootstrap.sh

import option ;
import feature ;

# Compiler configuration. This definition will be used unless
# you already have defined some toolsets in your user-config.jam
# file.
if ! gcc in [ feature.values <toolset> ]
{
using gcc ;
}

project : default-build <toolset> gcc ;

# Python configuration
using python : 2.7 : /usr ;

path-constant ICU_PATH : /home/your-user-name/usr ;

# List of --with-<library> and --without-<library>
# options. If left empty, all libraries will be built.
# Options specified on the command line completely
# override this variable.
libraries = /home/your-user-name/usr ;

# These settings are equivivalent to corresponding command-line
# options.
option.set prefix : /home/your-user-name/usr ;
option.set exec-prefix : /home/your-user-name/usr ;
option.set libdir : /home/your-user-name/usr/lib ;
option.set includedir : /home/your-user-name/usr/include ;

# Stop on first error
option.set keep-going : false ;

Save the file and exit the editor.

Build and install Boost Libraries

Build the Boost Libraries.

./b2

Alternatively you can build the Boost Libraries enabling the C++11 compiler support.

./b2 toolset=gcc cxxflags=-std=c++0x

The build process takes a while, once it is complete you can install the private version of the Boost Libraries.

./b2 install

6 comments:

  1. Thanks to you - short and precise tutorials always save some headaches! :)

    ReplyDelete
  2. Thank you very much. It's much helpful !!

    ReplyDelete
  3. Love your latest blog on Top 5 SAT Tips for parents and students. I am sharing it with my brother as he wants to appear in SAT next year. Thanks for posting.

    ReplyDelete
  4. With Folx you'll be able to down load torrents from trackers, along with by using magnet hyperlinks. Magnet inbound links is a popular way

    SketchUp Pro 2017 Torrent Mac - MacGIC

    ReplyDelete