You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by al...@apache.org on 2021/03/22 18:13:52 UTC

[kudu] branch master updated: [docs] update build instructions to run on SLES 15

This is an automated email from the ASF dual-hosted git repository.

alexey pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git


The following commit(s) were added to refs/heads/master by this push:
     new 32eca23  [docs] update build instructions to run on SLES 15
32eca23 is described below

commit 32eca230f5c0198113568f87c8d54e08579ee0e7
Author: Alexey Serbin <al...@apache.org>
AuthorDate: Mon Mar 8 07:45:40 2021 -0800

    [docs] update build instructions to run on SLES 15
    
    CC_FOR_BUILD, CPP_FOR_BUILD, CXXCPP_FOR_BUILD are necessary to build
    protobuf on SLES with gcc-8/g++-8.  An alternative approach would be
    patching the build script to provide those if building on SLES.
    
    Change-Id: I126d9d70288931ace6f6534c3b4f768b7dee17b1
    Reviewed-on: http://gerrit.cloudera.org:8080/17160
    Tested-by: Kudu Jenkins
    Reviewed-by: Grant Henke <gr...@apache.org>
---
 build-support/enable_devtoolset.sh |  8 +++++++-
 docs/installation.adoc             | 22 ++++++++++++----------
 2 files changed, 19 insertions(+), 11 deletions(-)

diff --git a/build-support/enable_devtoolset.sh b/build-support/enable_devtoolset.sh
index 81e1cb3..7977d6d 100755
--- a/build-support/enable_devtoolset.sh
+++ b/build-support/enable_devtoolset.sh
@@ -40,7 +40,7 @@ if [[ "$OSTYPE" =~ ^linux ]] && \
   # additional customization within the devtoolset.
   scl enable devtoolset-8 "$ROOT/enable_devtoolset_inner.sh $*"
 elif [[ "$OSTYPE" =~ ^linux ]] && \
-   [[ "$(lsb_release -irs)" =~ (SUSE)[[:space:]]+12\.[[:digit:]]+ ]]; then
+   [[ "$(lsb_release -irs)" =~ (SUSE)[[:space:]]+1[25]\.[[:digit:]]+ ]]; then
   # If ccache was on the PATH and CC/CXX have not already been set,
   # set them to gcc-8 specific ccache helper scripts (thus enabling ccache).
   if which ccache > /dev/null 2>&1 && [ ! "$CC" -a ! "$CXX" ]; then
@@ -54,6 +54,12 @@ elif [[ "$OSTYPE" =~ ^linux ]] && \
     export CXX="/usr/bin/g++-8"
   fi
 
+  # TODO(aserbin): patch the protobuf in thirdparty to allow building with
+  #                gcc-8/g++-8 and remove these x_FOR_BUILD below
+  export CC_FOR_BUILD="$CC"
+  export CPP_FOR_BUILD="$CC -E"
+  export CXXCPP_FOR_BUILD="$CXX -E"
+
   # Execute the arguments
   $@
 else
diff --git a/docs/installation.adoc b/docs/installation.adoc
index e463682..1486919 100644
--- a/docs/installation.adoc
+++ b/docs/installation.adoc
@@ -393,16 +393,17 @@ make -j4
 . Install the prerequisite libraries, if they are not installed.
 +
 ----
-$ sudo zypper install autoconf automake curl cyrus-sasl-devel \
-  cyrus-sasl-gssapi flex gcc gcc-c++ gdb git java-1_8_0-openjdk-devel \
-  krb5-devel krb5-server libtool lsb-release make ntp openssl-devel patch \
+$ sudo zypper install autoconf automake cmake curl cyrus-sasl-devel \
+  cyrus-sasl-gssapi flex gcc8 gcc8-c++ gdb git java-1_8_0-openjdk-devel \
+  krb5-devel libtool lsb-release make ntp patch \
   pkg-config python rsync unzip vim
+$ sudo zypper install libopenssl-devel
 ----
 
-. If you are building on SUSE 12 or older, install GCC-8.
+. If you are building on something older that SUSE 15:
 +
 ----
-$ sudo zypper install gcc8 gcc8-c++
+$ sudo zypper install openssl-devel
 ----
 
 . Optional: If support for Kudu's NVM (non-volatile memory) block cache is
@@ -499,17 +500,18 @@ sudo make DESTDIR=/opt/kudu install
 ====
 This script provides an overview of the procedure to build Kudu on SLES, and
 can be used as the basis for an automated deployment scenario. It skips
-the steps marked *Optional* above.
+the steps marked *Optional* above. If running this on something older than
+SLES 15, replace `libopenssl-devel` with `openssl-devel`.
 
 [source,bash]
 ----
 #!/bin/bash
 
-sudo zypper install -y autoconf automake curl cyrus-sasl-devel \
-  cyrus-sasl-gssapi flex gcc gcc-c++ gdb git java-1_8_0-openjdk-devel \
-  krb5-devel libtool lsb-release make ntp openssl-devel patch \
+sudo zypper install -y autoconf automake cmake curl cyrus-sasl-devel \
+  cyrus-sasl-gssapi flex gcc8 gcc8-c++ gdb git java-1_8_0-openjdk-devel \
+  krb5-devel libtool lsb-release make ntp patch \
   pkg-config python rsync unzip vim
-sudo zypper install gcc8 gcc8-c++
+sudo zypper install libopenssl-devel
 git clone https://github.com/apache/kudu
 cd kudu
 build-support/enable_devtoolset.sh thirdparty/build-if-necessary.sh