From 56a847a4ffb69d7d42212cb6ea127bc47691f7b1 Mon Sep 17 00:00:00 2001 From: Gautham Banasandra Date: Sun, 31 Jan 2021 17:12:00 +0530 Subject: [PATCH 1/2] HADOOP-17507. Add install notes GCC9, CMake 3.19 * Added instructions for Ubuntu 14.04 and Centos 8 regarding installation of GCC 9.3.0 and CMake 3.19. --- BUILDING.txt | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/BUILDING.txt b/BUILDING.txt index 2753c6fd4ca90..70657ad8bb51c 100644 --- a/BUILDING.txt +++ b/BUILDING.txt @@ -63,6 +63,20 @@ Installing required packages for clean install of Ubuntu 14.04 LTS Desktop: $ sudo apt-get -y install maven * Native libraries $ sudo apt-get -y install build-essential autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev libsasl2-dev +* GCC 9.3.0 + $ sudo apt-get -y install software-properties-common + $ sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test + $ sudo apt-get update + $ sudo apt-get -y install g++-9 gcc-9 + $ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9 +* CMake 3.19 + $ mkdir -p /opt/cmake \ + && curl -L https://cmake.org/files/v3.19/cmake-3.19.0.tar.gz > cmake-3.19.0.tar.gz \ + && tar -zxvf cmake-3.19.0.tar.gz \ + && cd cmake-3.19.0 \ + && ./bootstrap \ + && make -j$(nproc) \ + && sudo make install * Protocol Buffers 3.7.1 (required to build native code) $ mkdir -p /opt/protobuf-3.7-src \ && curl -L -s -S \ @@ -453,6 +467,19 @@ Building on CentOS 8 * Install libraries provided by CentOS 8. $ sudo dnf install libtirpc-devel zlib-devel lz4-devel bzip2-devel openssl-devel cyrus-sasl-devel libpmem-devel +* Install GCC 9.3.0 + $ sudo dnf -y install gcc-toolset-9-gcc gcc-toolset-9-gcc-c++ + $ source /opt/rh/gcc-toolset-9/enable + +* Install CMake 3.19 + $ mkdir -p /opt/cmake \ + && curl -L https://cmake.org/files/v3.19/cmake-3.19.0.tar.gz > cmake-3.19.0.tar.gz \ + && tar -zxvf cmake-3.19.0.tar.gz \ + && cd cmake-3.19.0 \ + && ./bootstrap \ + && make -j$(nproc) \ + && sudo make install + * Install boost. $ curl -L -o boost_1_72_0.tar.bz2 https://sourceforge.net/projects/boost/files/boost/1.72.0/boost_1_72_0.tar.bz2/download $ tar xjf boost_1_72_0.tar.bz2 From 4eef44b0c107c9e309563132bb2d33b3cc9aeafb Mon Sep 17 00:00:00 2001 From: Gautham Banasandra Date: Sun, 31 Jan 2021 19:56:02 +0530 Subject: [PATCH 2/2] Split instructions to multiline * Split the instructions for installing CMake into mulitple lines for easier readability. --- BUILDING.txt | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/BUILDING.txt b/BUILDING.txt index 70657ad8bb51c..d9f46a26e6edd 100644 --- a/BUILDING.txt +++ b/BUILDING.txt @@ -70,13 +70,11 @@ Installing required packages for clean install of Ubuntu 14.04 LTS Desktop: $ sudo apt-get -y install g++-9 gcc-9 $ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9 * CMake 3.19 - $ mkdir -p /opt/cmake \ - && curl -L https://cmake.org/files/v3.19/cmake-3.19.0.tar.gz > cmake-3.19.0.tar.gz \ - && tar -zxvf cmake-3.19.0.tar.gz \ - && cd cmake-3.19.0 \ - && ./bootstrap \ - && make -j$(nproc) \ - && sudo make install + $ curl -L https://cmake.org/files/v3.19/cmake-3.19.0.tar.gz > cmake-3.19.0.tar.gz + $ tar -zxvf cmake-3.19.0.tar.gz && cd cmake-3.19.0 + $ ./bootstrap + $ make -j$(nproc) + $ sudo make install * Protocol Buffers 3.7.1 (required to build native code) $ mkdir -p /opt/protobuf-3.7-src \ && curl -L -s -S \ @@ -472,13 +470,11 @@ Building on CentOS 8 $ source /opt/rh/gcc-toolset-9/enable * Install CMake 3.19 - $ mkdir -p /opt/cmake \ - && curl -L https://cmake.org/files/v3.19/cmake-3.19.0.tar.gz > cmake-3.19.0.tar.gz \ - && tar -zxvf cmake-3.19.0.tar.gz \ - && cd cmake-3.19.0 \ - && ./bootstrap \ - && make -j$(nproc) \ - && sudo make install + $ curl -L https://cmake.org/files/v3.19/cmake-3.19.0.tar.gz > cmake-3.19.0.tar.gz + $ tar -zxvf cmake-3.19.0.tar.gz && cd cmake-3.19.0 + $ ./bootstrap + $ make -j$(nproc) + $ sudo make install * Install boost. $ curl -L -o boost_1_72_0.tar.bz2 https://sourceforge.net/projects/boost/files/boost/1.72.0/boost_1_72_0.tar.bz2/download