Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Using custom toolchain with Impala

Starting with Impala 4.3.0, you can use a custom native toolchain with

Code Block
# Set a path for the toolchain. If this directory doesn't exist, Impala's buildall.sh script will download and build 
# native-toolchain according to details in impala-config.sh.
export NATIVE_TOOLCHAIN_HOME=/path/to/native-toolchain

# Start the Impala build. This will (re)build native-toolchain and use the results in ${NATIVE_TOOLCHAIN_HOME}/build.
cd ${IMPALA_HOME}
. bin/impala-config.sh
./buildall.sh <args>

For Impala checkouts prior to 4.3.0, use

Code Block
languagebash
# Assume that ${IMPALA_HOME} has the Impala source checkout and ${NATIVE_TOOLCHAIN_HOME} has the native-toolchain source checkout
cd ${IMPALA_HOME}
# Symlink the built packages into the toolchain/ subdirectory
(mkdir -p toolchain && cd toolchain && ln -s ${NATIVE_TOOLCHAIN_HOME}/build/* .)

# Disable toolchain bootstrapping, which could replace our binaries with precompiled ones.
# Adding this to impala-config-local.sh makes it permanent for this Impala checkout.
echo "export SKIP_TOOLCHAIN_BOOTSTRAP=true" >> bin/impala-config-local.sh
. bin/impala-config.sh
# Optional: ${IMPALA_HOME}/toolchain is the default value for IMPALA_TOOLCHAIN. You may want to add this to your .bashrc file.
export IMPALA_TOOLCHAIN=${IMPALA_HOME}/toolchain

 # Build Impala - this will pick up the new toolchain.
./buildall.sh <args>

...