You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 17 Next »

Describes how to download, build, and install build tools required for Apache Trafodion.


Configurable Installation

The location of the tools is configurable and can be specified in the Trafodion configuration file. The Trafodion configuration file template is located in:

 <Trafodion download directory>/incubator-trafodion/core/sqf/LocalSettingsTemplate.sh

Following the directory structure shown in the template file makes it easier to specify the location of these tools for the build. This means you will only need to set the TOOLSDIR environment variable to the value of the common parent directory before building Trafodion.

Required Build Tools

Several tools need to be downloaded, built, and installed:

ToolDescription
MPICHAn implementation of the Message Passing Interface (MPI) standard.  For use in Trafodion, MPICH must be built to force sockets to be used in both internode and intranode message passing.
BisonGeneral-purpose parser generator.
Udis86Minimalistic disassembler library (libudis86) for the x86 class of instruction set architectures.
LLVMCollection of modular and reusable compiler and toolchain technologies.
ICUSetup of C/C++ and Java libraries providing Unicode and Globalization support for software applications.
ZookeeperCoordination service for distributed applications.  It exposes common services such as naming, configuration management, synchronization, and group services.
ThriftCommunications and data serialization tool.
MavenBuild tool that is only installed if compatible version does not exist.

You can install these tools using one of the following methods:

  1. traf_tools_setup.sh installation: a script that uses wget to download the appropriate tar file, builds, and installs the required tool into a directory of your choice for each tool listed above.
  2. Manual installation: if one or more of these tools are already installed in your environment or if you want to verify the download location before accepting software, then you can install each tool separately.

traf_tools_setup.sh Installation

You may want to modify traf_tools_setup.sh for your specific environment. Example: if you already have Zoopkeeper installed, you may not want to re-install it.

You may need root or sudo access to installs the tools in desired locations.

In the sections below, incubator-trafodion represents the root directory where you installed the Trafodion source. (If you have not yet downloaded Trafodion source, please do so now.)

traf_tools_setup.sh Usage
cd incubator-trafodion.install
./traf_tools_setup.sh -h
Usage: ./traf_tools_setup.sh -d <downloaddir> -i <installdir>
 -d <downloaddir> - location of download directory
 -i <installdir>  - location of install directory
 -h - help
example: traf_tools_setup.sh -d /home/userx/download -i /home/userx/tools

Run traf_tools_setup.sh to install all dependent tools.

 

Manual Install

In the sections below, the <tool installation directory> is the directory where you want the tool to be installed.  

MPICH

Tested Version: 3.0.4

Download: http://www.mpich.org/static/downloads/3.0.4/mpich-3.0.4.tar.gz (http://www.mpich.org/downloads)

Install:

tar -xzf mpich-3.0.4.tar.gz
cd mpich-3.0.4
./configure --prefix=<tool installation directory>/dest-mpich-3.0.4 --with-device=ch3:sock --disable-f77 --disable-fc 
make
make check
make install

 <tool installation directory> is the directory where you want MPICH to be installed. If you do not specify the --prefix option, the default location is /usr/local. For more detailed instructions, see the README file that comes with the source.

Bison

Tested Version: 3.0

Download: http://ftp.gnu.org/gnu/bison/bison-3.0.tar.gz (http://ftp.gnu.org/gnu/bison/)

Considerations: Refer to the bison INSTALL file for detailed instructions. 

Determine Bison Version
which bison
bison --version

If the version is older than 3.0, then do the following:

tar -xzf bison-3.0.tar.gz
cd bison-3.0
./configure --prefix=<tool installation directory>/bison_3_linux
make
make check
make install

The make check step may return errors like the following that can be ignored:

make[3]: Entering directory `<mydir>/bison-3.0'
  YACC     examples/calc++/calc++-parser.stamp
  CXX      examples/calc++/examples_calc___calc__-calc++-driver.o
  LEX      examples/calc++/calc++-scanner.cc
  CXX      examples/calc++/examples_calc___calc__-calc++-scanner.o
g++: ./examples/calc++/calc++-scanner.cc: No such file or directory
g++: no input file

Adjust your PATH to ensure that the correct version is chosen. Rerun the bison --version to verify.

Udis86

Tested Version: 1.7.2

Download:  http://sourceforge.net/projects/udis86/files/udis86/1.7/udis86-1.7.2.tar.gz (http://udis86.sourceforge.net)

Consideration: Udis86 is a prerequisite to building the LLVM product.

Install:

tar xzf udis86-1.7.2.tar.gz
cd udis86-1.7.2
./configure --prefix=<tool installation directory>/udis86-1.7.2 --enable-shared
make
make install

LLVM

Tested Version: 3.2

Download: http://llvm.org/releases/3.2/llvm-3.2.src.tar.gz (http://llvm.org/releases/download.html)

Consideration: Udis86 must be installed on the system before LLVM is built and installed. Building LLVM takes some time to complete, be patient.

Question

TBD: LLVM is available via yum. Is yum install a better approach?

Install:

  # Set BASE_DIR to the top-level directory where the LLVM source will be 
  # unpacked and the objects compiled.
  BASE_DIR=<your-base-dir>
  cd $BASE_DIR
  tar xzf llvm-3.2.src.tar.gz
  
  export MY_UDIS_INSTALL_DIR=<udis-installation-directory>/udis86-1.7.2
  export MY_LLVM_INSTALL_DIR=<llvm-installation-directory>/dest-llvm-3.2/
  export MY_LLVM_SRC_DIR=$BASE_DIR/llvm-3.2.src
  export MY_LLVM_OBJ_DIR=$BASE_DIR/llvm-3.2.obj/
  export LD_LIBRARY_PATH=$MY_UDIS_INSTALL_DIR/lib:$LD_LIBRARY_PATH
  export C_INCLUDE_PATH=$MY_UDIS_INSTALL_DIR/include
  export CPATH=$MY_UDIS_INSTALL_DIR/include

  mkdir -p $MY_LLVM_OBJ_DIR/release
  cd $MY_LLVM_OBJ_DIR/release

  $MY_LLVM_SRC_DIR/configure --prefix=$MY_LLVM_INSTALL_DIR/release \
   --enable-optimized --enable-jit \
   --enable-shared --enable-targets=x86,x86_64,cpp \
   --with-udis86=$MY_UDIS_INSTALL_DIR/lib \
   CFLAGS=-fgnu89-inline

  make libs-only
  make install-libs

  mkdir -p $MY_LLVM_OBJ_DIR/debug
  cd $MY_LLVM_OBJ_DIR/debug

  $MY_LLVM_SRC_DIR/configure --prefix=$MY_LLVM_INSTALL_DIR/debug \
   --enable-optimized --enable-jit \
   --enable-debug-runtime --enable-debug-symbols \
   --enable-shared --enable-targets=x86,x86_64,cpp \
   --with-udis86=$MY_UDIS_INSTALL_DIR/lib \
   CFLAGS=-fgnu89-inline

  make libs-only
  make install-libs

ICU

Tested Version: 4.4.0

Download: http://download.icu-project.org/files/icu4c/4.4/icu4c-4_4-src.tgz (http://site.icu-project.org/download)

Install:

tar -xzf icu4c-4_4-src.tgz
cd icu/source
./runConfigureICU Linux --with-library-suffix=Nv44 --prefix=<tool installation directory>/icu4.4/linux64
make && make check
make install

The following make check errors can be ignored.

 

[All tests passed successfully...]
Elapsed Time: 00:00:12.126
make[2]: Leaving directory `/home/centos/icu/source/test/cintltst'
---------------
ALL TESTS SUMMARY:
ok:  testdata iotest cintltst
===== ERRS:  intltest
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/home/centos/icu/source/test'
make: *** [check-recursive] Error 2

Zookeeper

Tested Version: 3.4.5

Download: https://archive.apache.org/dist/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz

Install:

tar -xzf zookeeper-3.4.5.tar.gz
cd zookeeper-3.4.5/src/c
./configure --prefix=<tool installation directory>/zookeeper-3.4.5
make
make install 

Thrift

Tested Version: 0.9.0

Download: http://archive.apache.org/dist/thrift/0.9.0/

Consideration: Behind a firewall, you may need the ant flags to specify a proxy.

Install:

tar -xzf thrift-0.9.0.tar.gz
cd thrift-0.9.0
./configure --prefix=<tool installation dir>/thrift-0.9.0 --without-qt 
make
make install

Maven

Tested Version: 3.3.3

Downloadhttp://archive.apache.org/dist/maven/maven-3/3.3.3/binaries/apache-maven-3.3.3-bin.tar.gz.

Considerations: Add Maven to your PATH once it has been installed.

Install:

tar -xzf apache-maven-3.3.3-bin.tar.gz -C <tool installation directory>

 

 

  • No labels