Hi,
today I've tried to build llvm-6.0.0rc2 using Cmake on my "SUSE Linux
Enterprise Server 12.3 (x86_64)" with the following commands (gcc-6.4.0
is necessary for CUDA-9.0).
wget http://prereleases.llvm.org/6.0.0/rc2/llvm-6.0.0rc2.src.tar.xz
wget http://prereleases.llvm.org/6.0.0/rc2/cfe-6.0.0rc2.src.tar.xz
wget http://prereleases.llvm.org/6.0.0/rc2/clang-tools-extra-6.0.0rc2.src.tar.xz
wget http://prereleases.llvm.org/6.0.0/rc2/compiler-rt-6.0.0rc2.src.tar.xz
wget http://prereleases.llvm.org/6.0.0/rc2/lldb-6.0.0rc2.src.tar.xz
wget http://prereleases.llvm.org/6.0.0/rc2/lld-6.0.0rc2.src.tar.xz
wget http://prereleases.llvm.org/6.0.0/rc2/polly-6.0.0rc2.src.tar.xz
wget http://prereleases.llvm.org/6.0.0/rc2/openmp-6.0.0rc2.src.tar.xz
tar xf llvm-6.0.0rc2.src.tar.xz
cd llvm-6.0.0rc2.src/tools
tar xf ../../cfe-6.0.0rc2.src.tar.xz
tar xf ../../polly-6.0.0rc2.src.tar.xz
tar xf ../../lldb-6.0.0rc2.src.tar.xz
tar xf ../../lld-6.0.0rc2.src.tar.xz
cd cfe-6.0.0rc2.src/tools
tar xf ../../../../clang-tools-extra-6.0.0rc2.src.tar.xz
cd ../../../projects
tar xf ../../compiler-rt-6.0.0rc2.src.tar.xz
tar xf ../../openmp-6.0.0rc2.src.tar.xz
cd ../..
rm -r build
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local/llvm-6.0.0\
-GNinja \
-DLLVM_TARGETS_TO_BUILD:STRING="NVPTX;X86" \
-DCMAKE_BUILD_TYPE:STRING="Release" \
-DLLVM_PARALLEL_COMPILE_JOBS:STRING="4" \
-DLLVM_PARALLEL_LINK_JOBS:STRING="4" \
-DCMAKE_C_COMPILER:STRING="/usr/local/gcc-6.4.0/bin/gcc" \
-DCMAKE_C_FLAGS:STRING="-m64 -I/usr/local/valgrind/include" \
-DCMAKE_CXX_COMPILER:STRING="/usr/local/gcc-6.4.0/bin/g++" \
-DCMAKE_CXX_FLAGS:STRING="-m64 -I/usr/local/valgrind/include" \
-DCMAKE_EXE_LINKER_FLAGS:STRING="-m64" \
-DLLVM_LIBDIR_SUFFIX:STRING="64" \
-DLLVM_POLLY_LINK_INTO_TOOLS:BOOL=ON \
-DLIBOMPTARGET_DEP_LIBELF_INCLUDE_DIR:STRING="/usr/local/elfutils-0.169/include" \
-DLIBOMPTARGET_DEP_LIBELF_LIBRARIES:STRING="/usr/local/elfutils-0.169/lib64/libelf.so" \
-DLIBOMPTARGET_DEP_LIBFFI_INCLUDE_DIR:STRING="/usr/include" \
-DLIBOMPTARGET_DEP_LIBFFI_LIBRARIES:STRING="/usr/lib64/libffi.so" \
-DCUDA_INCLUDE_DIRS:STRING="/usr/local/cuda/include" \
-DCUDA_LIBRARIES:STRING="/usr/local/cuda/lib64/libcudart.so" \
-DBUILD_SHARED_LIBS:BOOL=ON \
../llvm-6.0.0rc2.src \
>& tee log.cmake
ninja |& tee log.ninja-build
Unfortunately, I get the following error, although the missing file is
available.
loki build 188 tail -12 log.ninja-build
[3186/4317] Building CXX object tools/llvm-objdump/CMakeFiles/llvm-objdump.dir/WasmDump.cpp.o
[3187/4317] Building CXX object tools/lldb-6.0.0rc2.src/source/CMakeFiles/lldbBase.dir/lldb.cpp.o
FAILED: tools/lldb-6.0.0rc2.src/source/CMakeFiles/lldbBase.dir/lldb.cpp.o
/usr/local/gcc-6.4.0/bin/g++ -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -DLIBXML2_DEFINED -DLLDB_CONFIGURATION_RELEASE -DLLDB_USE_BUILTIN_DEMANGLER -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Itools/lldb-6.0.0rc2.src/source -I/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/lldb-6.0.0rc2.src/source -Itools/lldb-6.0.0rc2.src/include -I/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/lldb-6.0.0rc2.src/include -I/usr/include/libxml2 -Iinclude -I/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/include -I/usr/include/python2.7 -I/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/clang/include -Itools/lldb-6.0.0rc2.src/../clang/include -I/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/lldb-6.0.0rc2.src/source/. -m64 -I/usr/local/valgrind/include -fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wno-maybe-uninitialized -Wdelete-non-virtual-dtor -Wno-comment -ffunction-sections -fdata-sections -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-deprecated-register -Wno-vla-extension -O3 -DNDEBUG -fno-exceptions -fno-rtti -MMD -MT tools/lldb-6.0.0rc2.src/source/CMakeFiles/lldbBase.dir/lldb.cpp.o -MF tools/lldb-6.0.0rc2.src/source/CMakeFiles/lldbBase.dir/lldb.cpp.o.d -o tools/lldb-6.0.0rc2.src/source/CMakeFiles/lldbBase.dir/lldb.cpp.o -c /export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/lldb-6.0.0rc2.src/source/lldb.cpp
/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/lldb-6.0.0rc2.src/source/lldb.cpp:15:33: fatal error: clang/Basic/Version.h: No such file or directory
#include "clang/Basic/Version.h"
^
compilation terminated.
[3188/4317] Building CXX object tools/llvm-cfi-verify/lib/CMakeFiles/LLVMCFIVerify.dir/GraphBuilder.cpp.o
[3189/4317] Building CXX object tools/llvm-objdump/CMakeFiles/llvm-objdump.dir/llvm-objdump.cpp.o
[3190/4317] Building CXX object tools/llvm-objdump/CMakeFiles/llvm-objdump.dir/MachODump.cpp.o
ninja: build stopped: subcommand failed.
loki build 189
loki build 189 find /export2/src/llvm-6.0.0/llvm-6.0.0rc2.src -name Version.h
/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/cfe-6.0.0rc2.src/include/clang/Basic/Version.h
/export2/src/llvm-6.0.0/llvm-6.0.0rc2.src/tools/lld-6.0.0rc2.src/include/lld/Common/Version.h
loki build 190
Is it necessary to unpack the archives in different directories or to set
some environment variables or symbolic links so that Version.h will be found?
Thank you very much for any help in advance.
Kind regards
Siegmar