diff --git a/.travis.yml b/.travis.yml
index b533da3191e75912e6d34f8c0bdd4a1212e684f9..9dd1b9e0f16981afb41bbbdf082fae2d7cbf638b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -92,6 +92,7 @@ matrix:
       env: BINDINGS=cpp CC=clang
 before_install:
   - sudo apt-get update -qq
+  - sudo apt-get install llvm-3.8
   - sudo apt-get install lcov
   - gem install coveralls-lcov
   - if [ "$BINDINGS" != "none" ]; then sudo apt-get install -qq swig; fi
diff --git a/src/SConscript b/src/SConscript
index cea45efa61bd97ceb0fac6d51a1ccc0aa1757a41..aef5faca38906dd6943d7a7be2385a268cdf2f47 100644
--- a/src/SConscript
+++ b/src/SConscript
@@ -110,6 +110,11 @@ testenv.ParseConfig('pkg-config --cflags --libs glib-2.0')
 testenv_llvm_config_version = subprocess.Popen('%s --version' % env["LLVM_CONFIG"], \
                                                shell=True, \
                                                stdin=subprocess.PIPE, stdout=subprocess.PIPE).communicate()
+
+if LooseVersion(testenv_llvm_config_version[0]) < LooseVersion("3.6"):
+   print "This LLVM version %s is too old" % testenv_llvm_config_version
+   Exit(1)
+
 if LooseVersion(testenv_llvm_config_version[0]) < LooseVersion("3.9") and \
    LooseVersion(testenv_llvm_config_version[0]) >= LooseVersion("3.5"):
     testenv_llvm_system_libs_flag = "--system-libs"