Skip to content

Compilation

flow edited this page Feb 19, 2017 · 19 revisions

Table Of Contents

Requirements

  • JDK 1.8+
  • C++ compiler
    • Linux: GCC 4.4.7, or higher version
    • Mac: We use LLVM 7.0.0, other versions should work as well
  • Maven 3.0+

Source code

$> git clone [email protected]:shunfei/indexr.git
$> cd indexr
$> git checkout <indexr-release-tag>
$> git clone [email protected]:shunfei/indexr-compress-lib
$> cd indexr-compress-lib
$> git checkout <indexr-release-tag>
$> git clone [email protected]:shunfei/drill.git
$> cd drill
# For Drill 1.8.0
$> git checkout indexr-<indexr-release-tag>-drill-1.8.0
# For Drill 1.9.0
$> git checkout indexr-<indexr-release-tag>-drill-1.9.0

Currently IndexR plugin is not yet in official Apache Drill project, and we are working into it.

Build cpp libs

$> cd .../indexr
$> mkdir -p lib
$> cp .../indexr-compress-lib/lib/* lib/
$> ls lib/

Build IndexR

  • Run compilation scripts.
$> sh script/setup_all.sh
$> sh script/release_all.sh
$> ls distribution/indexr-<version>

Expected to list some generated folders:

indexr-drill/ indexr-hive/  indexr-tool/  lib/

They are what we need for deployment.

Build Drill Plugin

  • Go to IndexR Apache Drill project folder, and build Drill IndexR plugin.
$> cd .../drill

# For Drill 1.8.0
$> git checkout indexr-drill-1.8.0
# For Drill 1.9.0
$> git checkout indexr-drill-1.9.0

$> cd contrib/storage-indexr
$> mvn clean install -DskipTests
$> ls contrib/storage-indexr/target/drill-indexr-storage-<version>.jar 

drill-indexr-storage-<version>.jar is the jar file we need for deployment.

Clone this wiki locally