...
The Build Environment must be created before you can build the Trafodion code.
Supported Platforms
RedHat or CentOS 6.x (6.4 or later) versions are supported.
Anchor create-build-install-required-packages create-build-install-required-packages
Install Required Packages
You need to install the following packages before you can build Trafodion.
...
The following yum commands are used to install the required packages:
Code Block | ||||
---|---|---|---|---|
| ||||
sudo yum install epel-release sudo yum install alsa-lib-devel ant ant-nodeps boost-devel cmake \ device-mapper-multipath dhcp flex gcc-c++ gd git glibc-devel \ glibc-devel.i686 graphviz-perl gzip java-1.7.0-openjdk-devel \ libX11-devel libXau-devel libaio-devel \ libcurl-devel libibcm.i686 libibumad-devel libibumad-devel.i686 \ libiodbc libiodbc-devel librdmacm-devel librdmacm-devel.i686 \ libxml2-devel log4cxx log4cxx-devel lua-devel lzo-minilzo \ net-snmp-devel net-snmp-perl openldap-clients openldap-devel \ openldap-devel.i686 openmotif openssl-devel openssl-devel.i686 \ openssl-static perl-Config-IniFiles perl-Config-Tiny \ perl-DBD-SQLite perl-Expect perl-IO-Tty perl-Math-Calc-Units \ perl-Params-Validate perl-Parse-RecDescent perl-TermReadKey \ perl-Time-HiRes protobuf-compiler protobuf-devel python-qpid \ python-qpid-qmf qpid-cpp-client \ qpid-cpp-client-ssl qpid-cpp-server qpid-cpp-server-ssl \ qpid-qmf qpid-tools readline-devel saslwrapper sqlite-devel \ unixODBC unixODBC-devel uuid-perl wget xerces-c-devel xinetd |
Note | ||
---|---|---|
| ||
You cannot build Trafodion unless you’ve installed these packages. Also, you cannot create the Trafodion Test Environment without these packages. |
Verify Java Version
The Java version must be 1.7.x.
Do the following:
Code Block | ||||
---|---|---|---|---|
| ||||
java -version |
Example
Code Block | ||||
---|---|---|---|---|
| ||||
$ java -version java version "1.7.0_85" OpenJDK Runtime Environment (rhel-2.6.1.3.el6_6-x86_64 u85-b01) OpenJDK 64-Bit Server VM (build 24.85-b03, mixed mode) |
Ensure that the Java environment exists and points to your JDK installation. By default Java is located in /usr/lib/java-\<version\>
.
Example
Code Block | ||||
---|---|---|---|---|
| ||||
$ echo $JAVA_HOME $ ls /usr/lib/jvm/java-1.7* /usr/lib/jvm/java-1.7.0: ASSEMBLY_EXCEPTION bin include jre lib LICENSE tapset THIRD_PARTY_README /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.95.x86_64: ASSEMBLY_EXCEPTION bin include jre lib LICENSE tapset THIRD_PARTY_README /usr/lib/jvm/java-1.7.0-openjdk.x86_64: ASSEMBLY_EXCEPTION bin include jre lib LICENSE tapset THIRD_PARTY_README $ export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64 $ ls $JAVA_HOME ASSEMBLY_EXCEPTION bin include jre lib LICENSE tapset THIRD_PARTY_README $ |
Note | ||
---|---|---|
| ||
Do not point |
Download and Install Trafodion Source Tree
The Trafodion source code contains tools that help you set up the build environment.
If you haven’t done so already, then download and install the Trafodion source tree. Refer to the Source Download instructions in the How-To chapter.
Install Required Build Tools
Trafodion requires that several tools are installed in order to build. These tools are:
Tool | Description |
---|---|
Bison | General-purpose parser generator. |
ICU | Set of C/C++ and Java libraries providing Unicode and Globalization support for software applications. |
LLVM | Collection of modular and reusable compiler and tool-chain technologies. |
Maven | Build tool that is only installed if compatible version does not exist. |
MPICH | An implementation of the Message Passing Interface (MPI) standard. For use in Trafodion, MPICH must be built to force sockets to be used in both inter-node and intra-node message passing. |
Thrift | Communications and data serialization tool. |
Udis86 | Minimalistic disassembler library (libudis86) for the x86 class of instruction set architectures. |
Zookeeper | Coordination service for distributed applications. It exposes common services such as naming, configuration management, synchronization, and group services. |
You can perform the required installation using the Trafodion traf_tools_setup.sh
script (described below) or by installing each tool using the instructions in Build Tools Manual Install in the How-To chapter.
traf_tools_setup.sh
traf_tools_setup.sh
is a script that uses wget
to download the appropriate tar file, build, and install the required tool into a directory of your choice for each tool required tools.
The advantage of this method is that all the correct tools are downloaded and built in a single directory. Before building, a single environment variable needs to be set: TOOLSDIR
.
Info |
---|
You may want to modify |
Code Block | ||||
---|---|---|---|---|
| ||||
cd <Trafodion source directory>/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 |
Install Procedure
Run traf_tools_setup.sh
to install all dependent tools:
Install the required Build tools. This takes some time to complete.
Code Block language bash $ cd ~/mysource/incubator-trafodion/install $ mkdir ~/download $ ./traf_tools_setup.sh -d ~/download -i ~/trafodion-build-tools INFO: Starting tools build on Mon Jan 25 12:30:41 PST 2016 Tools install directory /home/trafdeveloper/trafodion-build-tools does not exist, do you want to to create it? y/n : y INFO: Created directory /home/trafdeveloper/trafodion-build-tools INFO: Tar download location: /home/trafdeveloper/download INFO: Tool install directory location: /home/trafdeveloper/trafodion-build-tools INFO: LogFile location: /home/trafdeveloper/mysource/incubator-trafodion/install/traf_tools_setup.log *********************************************************** INFO: Installing MPI on Mon Jan 25 12:30:45 PST 2016 INFO: downloaded tar file: mpich-3.0.4.tar.gz . . . INFO: downloaded tar file: apache-maven-3.3.3-bin.tar.gz INFO: Maven installation complete *********************************************************** INFO: Completed tools build on Mon Jan 25 13:18:31 PST 2016 INFO: List of tools directory: bison_3_linux dest-llvm-3.2 dest-mpich-3.0.4 icu4.4 thrift-0.9.0 udis86-1.7.2 zookeeper-3.4.5
Export
TOOLSDIR
in.bashrc
or.profile
.Code Block language bash export TOOLSDIR=~/trafodion-build-tools
Info Ensure that you reload
.bashrc
orprofile
before executing the next step.
Verify Build Environment
You verify the build environment to complete creating it.
Check Maven Installation
Code Block | ||||
---|---|---|---|---|
| ||||
mvn --version Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 05:51:28-0800) Maven home: /opt/apache-maven-3.0.5 Java version: 1.7.0_95, vendor: Oracle Corporation Java home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.95.x86_64/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "2.6.32-504.el6.x86_64", arch: "amd64", family: "unix" |
PATH
environmental variable in .bashrc
or .profile
. Reload as needed.
Code Block | ||
---|---|---|
| ||
PATH=$PATH:<tool installation directory>/apache-maven-3.3.3/bin |
...