-
Notifications
You must be signed in to change notification settings - Fork 0
Ignite_Recip_Src
The instructions provided below specify the steps to build Apache Ignite version 2.7.0 on Linux on IBM Z for the following distributions:
- RHEL (7.4, 7.5, 7.6)
- SLES (12 SP3, 15)
- Ubuntu (16.04, 18.04)
The binary for Apache Ignite version 2.7.0 can be downloaded from here. Please note that, starting of server as mentioned in Step 5 below is the only verification performed on the binary.
General Notes:
- When following the steps below please use a standard permission user unless otherwise specified.
- A directory
/<source_root>/
will be referred to in these instructions, this is a temporary writeable directory anywhere you'd like to place it.
1.1) Install Build Dependencies
-
RHEL (7.4, 7.5, 7.6)
sudo yum install -y wget git tar zip unzip
-
SLES (12 SP3, 15)
sudo zypper install -y git wget tar zip unzip
-
Ubuntu (16.04, 18.04)
sudo apt-get update sudo apt-get install -y maven wget git tar zip unzip
1.2) Download and install Maven (for RHEL and SLES )
cd /<source_root>/
wget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
tar zxf apache-maven-3.3.9-bin.tar.gz
export PATH=/<source_root>/apache-maven-3.3.9/bin:$PATH
1.3) Download and install AdoptOpenJDK 8 from here
Note: At the time of creation of these build instructions Apache Ignite was verified with AdoptOpenJDK version (build 1.8.0_192-b12_openj9) .
1.4) Build and install gcc 6.3.0 (for RHEL only)
cd /<source_root>/
sudo yum install -y wget tar make flex gcc gcc-c++ gcc-devel.s390 binutils-devel bzip2
wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-6.3.0/gcc-6.3.0.tar.gz
tar -xvzf gcc-6.3.0.tar.gz
cd gcc-6.3.0/
./contrib/download_prerequisites
cd /<source_root>/
mkdir gcc_build
cd gcc_build/
../gcc-6.3.0/configure --prefix="/opt/gcc" --enable-shared --with-system-zlib --enable-threads=posix --enable-__cxa_atexit --enable-checking --enable-gnu-indirect-function --enable-languages="c,c++" --disable-bootstrap --disable-multilib
Note: By changing the prefix, you can specify a different installation directory. Make sure to use the same directory in below commands
make
sudo make install
export PATH=/opt/gcc/bin:$PATH
sudo ln -sf /opt/gcc/bin/gcc /usr/bin/gcc
export C_INCLUDE_PATH=/opt/gcc/lib/gcc/s390x-ibm-linux-gnu/6.3.0/include
export CPLUS_INCLUDE_PATH=/opt/gcc/lib/gcc/s390x-ibm-linux-gnu/6.3.0/include
sudo ln -sf /opt/gcc/lib64/libstdc++.so.6 /lib64/libstdc++.so.6
Download the Apache Ignite v2.7.0 source code from here under /<source_root>/
- Install following jars manually
cd /tmp
wget http://clojars.org/repo/ring-cors/ring-cors/0.1.5/ring-cors-0.1.5.jar
cd /<source_root>/apache-ignite-2.7.0-src
mvn install:install-file -Dfile=/tmp/ring-cors-0.1.5.jar -DgroupId=ring-cors -DartifactId=ring-cors -Dversion=0.1.5 -Dpackaging=jar
cd /tmp
wget http://central.maven.org/maven2/net/minidev/json-smart/2.3/json-smart-2.3.jar
cd /<source_root>/apache-ignite-2.7.0-src
mvn install:install-file -Dfile=/tmp/json-smart-2.3.jar -DgroupId=net.minidev -DartifactId=json-smart -Dversion=2.3-SNAPSHOT -Dpackaging=jar
- Build the package without running tests
cd /<source_root>/apache-ignite-2.7.0-src
mvn clean package -DskipTests
cd /<source_root>/apache-ignite-2.7.0-src
mvn surefire:test -pl :ignite-core -am -Dmaven.test.failure.ignore=true -DfailIfNoTests=false -Dtest=IgniteBasicTestSuite -Dmaven.javadoc.skip=true
Note: GridMessageCollectionTest.testMarshal->doTestMarshal
failure can be ignored as per https://issues.apache.org/jira/browse/IGNITE-10806
cd /<source_root>/apache-ignite-2.7.0-src
bin/ignite.sh