Boost

Boost is a set of C++ libraries that provide helpful data structures and numerous support functions in a wide range of aspects of programming, such as, image processing, gpu programming, concurrent programming, along with many algorithms.  Boost is portable and performs well on a wide variety of platforms.

Availability & Restrictions

Boost is available without restriction to all OSC Users

The following version of Boost are available on OSC systems:

Version Oakley Ruby owens Notes
1.41.0 System Install System Install   No Module Needed
1.53.0     System Install No Module Needed
1.56.0 X(GI) X(GI)    
1.58.0 X(G)      
1.60.0 X(G)      
1.63.0  X(GI)*  X(GI)*  X(GI)*  
1.64.0 X(GI) X(GI) X(GI)  

 

NOTE: G = available with gnu; I = available with intel; * means default version

Usage on Oakley

Set-up

Initalizing the system for use of the Boost library is independent of the compiler you are using.  To load the boost module run the following command:

module load boost

Building With Boost

The following environment variables are setup when the Boost library is loaded:

Variable Use
$BOOST_CFLAGS Use during your compilation step for C++ programs.
$BOOST_LIBS Use during your link step.

 

Below is a set of example commands used to build and run a file called example2.cpp. First copy the example2.cpp and jayne.txt with the following commands.

cp /usr/local/src/boost/boost-1.56.0/test.osc/example2.cpp .
cp /usr/local/src/boost/boost-1.56.0/test.osc/jayne.txt .
module load boost
g++ $BOOST_CFLAGS example2.cpp -o boostTest $BOOST_LIBS -lboost_regex
./boostTest < jayne.txt

Usage on Ruby

Set-up

Initalizing the system for use of the Boost library is independent of the compiler you are using.  To load the boost module run the following command:

module load boost

Building With Boost

The following environment variables are setup when the Boost library is loaded:

VARIABLE USE
$BOOST_CFLAGS Use during your compilation step for C++ programs.
$BOOST_LIBS Use during your link step.

 

Below is a set of example commands used to build and run a file called  example2.cpp. First copy the example2.cpp and jayne.txt from Oakley into your home directory with the following commands:

cp /usr/local/src/boost/boost-1_56_0/test.osc/example2.cpp ~
cp /usr/local/src/boost/boost-1_56_0/test.osc/jayne.txt ~
Then compile and test the program with the folllowing commands:
module load boost
g++ $BOOST_CFLAGS example2.cpp -o boostTest $BOOST_LIBS -lboost_regex
./boostTest < jayne.txt

Usage on Owens

Set-up

Since Boost is a System Install, no module is needed to run the application.

Building With Boost

Below is a set of example commands used to build and run a file called  example2.cpp. First copy the example2.cpp and jayne.txt from Oakley into your home directory with the following commands:

cp /usr/local/src/boost/boost-1_56_0/test.osc/example2.cpp ~
cp /usr/local/src/boost/boost-1_56_0/test.osc/jayne.txt ~
Then compile and test the program with the folllowing commands:
g++ example2.cpp -o boostTest -lboost_regex
./boostTest < jayne.txt

Further Reading

 

Service: 
Fields of Science: