fatal error: clang/Basic/Version.inc: No such file or directory

Hi,

I try to build lldb with Cmake (gcc-5.3.0 is necessary for CUDA)
on my "SUSE Linux Enterprise Server 12.2 (x86_64)". Unfortunately
the build process breaks for lldb with the below mentioned error
message. I've downloaded the following packages and configured
with the following commands.

svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
cd llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
svn co http://llvm.org/svn/llvm-project/polly/trunk polly
cd clang/tools
svn co http://llvm.org/svn/llvm-project/clang-tools-extra/trunk/ extra
cd ../../../projects
svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt
svn co http://llvm.org/svn/llvm-project/openmp/trunk openmp
svn co http://llvm.org/svn/llvm-project/lldb/trunk lldb
svn co https://github.com/clang-ykt/openmp libomptarget
cd ../..

rm -r build
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local/llvm-trunk \
   -DCMAKE_BUILD_TYPE:STRING="Release" \
   -DLLVM_PARALLEL_COMPILE_JOBS:STRING="4" \
   -DLLVM_PARALLEL_LINK_JOBS:STRING="4" \
   -DLLVM_TARGETS_TO_BUILD:STRING="NVPTX;X86" \
   -DLLVM_ENABLE_SPHINX:BOOL=ON \
   -DSPHINX_OUTPUT_MAN:BOOL=ON \
   -DCMAKE_C_COMPILER:STRING="/usr/local/gcc-5.3.0/bin/gcc" \
   -DCMAKE_C_FLAGS:STRING="-m64 -I/usr/local/valgrind/include" \
   -DCMAKE_CXX_COMPILER:STRING="/usr/local/gcc-5.3.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 \
   >& tee log.cmake
cmake --build . |& tee log.cmake-build

...
[ 41%] Linking CXX shared library ../../../../../lib64/libclangRewriteFrontend.so
[ 41%] Built target clangRewriteFrontend
[ 41%] Generating SVNVersion.inc
-- Found Subversion: /usr/bin/svn (found version "1.8.10")
Scanning dependencies of target lldbBase
[ 41%] Building CXX object projects/lldb/source/CMakeFiles/lldbBase.dir/lldb.cpp.o
In file included from /export2/src/llvm-trunk/llvm/projects/lldb/source/lldb.cpp:15:0:
/export2/src/llvm-trunk/llvm/tools/clang/include/clang/Basic/Version.h:19:35: fatal error: clang/Basic/Version.inc: No such file or directory
compilation terminated.
projects/lldb/source/CMakeFiles/lldbBase.dir/build.make:67: recipe for target 'projects/lldb/source/CMakeFiles/lldbBase.dir/lldb.cpp.o' failed
gmake[2]: *** [projects/lldb/source/CMakeFiles/lldbBase.dir/lldb.cpp.o] Error 1
CMakeFiles/Makefile2:7755: recipe for target 'projects/lldb/source/CMakeFiles/lldbBase.dir/all' failed
gmake[1]: *** [projects/lldb/source/CMakeFiles/lldbBase.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
gmake: *** [all] Error 2
loki build 564

Is it necessary to download more packages to avoid the error or results the
problem from an error of the lldb package? I would be grateful if somebody
can tell me which additional package is necessary or if somebody can fix
the problem. Thank you very much for any help in advance.

Kind regards

Siegmar

Looks like you put lldb in the wrong place. It should be in llvm/tools, not llvm/projects.

hth…
don

Hi Don,

Looks like you put lldb in the wrong place. It should be in llvm/tools, not llvm/projects.

Thank you very much for your answer. I started from the beginning and
checked out the following projects.

rm -r llvm
svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
cd llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
svn co http://llvm.org/svn/llvm-project/polly/trunk polly
svn co http://llvm.org/svn/llvm-project/lldb/trunk lldb
cd clang/tools
svn co http://llvm.org/svn/llvm-project/clang-tools-extra/trunk/ extra
cd ../../../projects
svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt
svn co http://llvm.org/svn/llvm-project/openmp/trunk openmp
svn co https://github.com/clang-ykt/openmp libomptarget
cd ../..

I was able to build and install everything without errors. Unfortunately,
it seems that I don't have "lldb". The same is still true for "libomptarget".

loki build 126 ls -l /usr/local/llvm-trunk/bin/*lldb*
ls: No match.
loki build 127 ls -l /usr/local/llvm-trunk/lib64/*lldb*
ls: No match.
loki build 128 ls -l /usr/local/llvm-trunk/lib64/*omptarget*
ls: No match.
loki build 129

Do you know what I'm doing wrong? I used the commands further down from my
last email to build everything.

loki build 130 grep lldb log.*
log.cmake-build:[ 90%] Building CXX object tools/lldb/lib/Config/CMakeFiles/lldConfig.dir/Version.cpp.o
...
log.cmake-build:[ 90%] Building CXX object tools/lldb/lib/Core/CMakeFiles/lldCore.dir/Writer.cpp.o
log.cmake-build:[ 90%] Building CXX object tools/lldb/lib/ReaderWriter/YAML/CMakeFiles/lldYAML.dir/ReaderWriterYAML.cpp.o
log.cmake-build:[ 90%] Building CXX object tools/lldb/lib/ReaderWriter/CMakeFiles/lldReaderWriter.dir/FileArchive.cpp.o
log.cmake-build:[ 90%] Building CXX object tools/lldb/lib/ReaderWriter/MachO/CMakeFiles/lldMachO.dir/ArchHandler.cpp.o
...
log.cmake-build:[ 90%] Building CXX object tools/lldb/lib/ReaderWriter/MachO/CMakeFiles/lldMachO.dir/WriterMachO.cpp.o
log.cmake-build:[ 90%] Building CXX object tools/lldb/lib/Driver/CMakeFiles/lldDriver.dir/DarwinLdDriver.cpp.o
log.cmake-build:[ 90%] Building CXX object tools/lldb/ELF/CMakeFiles/lldELF.dir/Arch/AArch64.cpp.o
...
log.cmake-build:[ 92%] Building CXX object tools/lldb/ELF/CMakeFiles/lldELF.dir/Writer.cpp.o
log.cmake-build:[ 92%] Building CXX object tools/lldb/COFF/CMakeFiles/lldCOFF.dir/Chunks.cpp.o
...
log.cmake-build:[ 92%] Building CXX object tools/lldb/COFF/CMakeFiles/lldCOFF.dir/Writer.cpp.o
log.cmake-build:[ 92%] Building CXX object tools/lldb/tools/lld/CMakeFiles/lld.dir/lld.cpp.o
loki build 131

Thank you very much for any help in advance.

Kind regards

Siegmar

Can you run it from the bin subdir in your build directory? Try running “make check-lldb”.

Also, what happened when you ran “make install”? Did you see any errors?