Error building clang

Getting the latest LLVM and clang, when trying to 'make' I get:

/home/suseldiener/dev/clang/build/tools/clang/utils/TableGen/Debug+Asserts/TableGen.o: In function `llvm::SmallVectorTemplateBase<char const*,

::grow(unsigned long)':

/opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to `llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
/home/suseldiener/dev/clang/build/tools/clang/utils/TableGen/Debug+Asserts/TableGen.o: In function `llvm::SmallVectorTemplateBase<std::pair<char const*, std::pair<int, char const*> >, true>::grow(unsigned long)':

/opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to `llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
/home/suseldiener/dev/clang/build/Debug+Asserts/lib/libLLVMTableGen.a(TGLexer.o): In function `llvm::TGLexer::LexInclude()':

/opt/LinuxShare/VCS/svn16/llvm_trunk/lib/TableGen/TGLexer.cpp:297: undefined reference to `llvm::PrintError(llvm::SMLoc, llvm::Twine const&)'
/opt/LinuxShare/VCS/svn16/llvm_trunk/lib/TableGen/TGLexer.cpp:309: undefined reference to `llvm::PrintError(llvm::SMLoc, llvm::Twine const&)'
/home/suseldiener/dev/clang/build/Debug+Asserts/lib/libLLVMSupport.a(CommandLine.o): In function `llvm::SmallVectorTemplateBase<llvm::cl::Option*,

::grow(unsigned long)':

/opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to `llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
/home/suseldiener/dev/clang/build/Debug+Asserts/lib/libLLVMSupport.a(CommandLine.o): In function `llvm::SmallVectorTemplateBase<std::pair<llvm::StringRef, unsigned int>, true>::grow(unsigned long)':

/opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to `llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
/home/suseldiener/dev/clang/build/Debug+Asserts/lib/libLLVMSupport.a(CommandLine.o): In function `llvm::SmallVectorTemplateBase<std::pair<char const*, llvm::cl::Option*>, true>::grow(unsigned long)':

/opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to `llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
/home/suseldiener/dev/clang/build/Debug+Asserts/lib/libLLVMSupport.a(FoldingSet.o): In function `llvm::SmallVectorTemplateBase<unsigned int,

::grow(unsigned long)':

/opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to `llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
/home/suseldiener/dev/clang/build/Debug+Asserts/lib/libLLVMSupport.a(SourceMgr.o): In function `llvm::SmallVectorTemplateBase<std::pair<unsigned int, unsigned int>, true>::grow(unsigned long)':

/opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to `llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
clang: error: linker command failed with exit code 1 (use -v to see invocation)

make[1]: *** [/home/suseldiener/dev/clang/build/Debug+Asserts/bin/clang-tblgen] Error 1
make[1]: Leaving directory `/home/suseldiener/dev/clang/build/tools/clang/utils/TableGen'

I am under SUSE 11.4. The clang version is clang version 3.2 (trunk 161314). The gcc version is 4.5.1. Any ideas why I am seeing the error above ?

Getting the latest LLVM and clang, when trying to ‘make’ I get:

/home/suseldiener/dev/clang/build/tools/clang/utils/TableGen/Debug+Asserts/TableGen.o: In function llvm::SmallVectorTemplateBase<char const*, true>::grow(unsigned long)': /opt/LinuxShare/VCS/svn16/llvm_trunk/include/llvm/ADT/SmallVector.h:334: undefined reference to llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)’

This suggests your LLVM libraries are from revision 162331 or later, but your LLVM headers are from an earlier revision.
[…]

I am under SUSE 11.4. The clang version is clang version 3.2 (trunk 161314). The gcc version is 4.5.1. Any ideas why I am seeing the error above ?

You have some kind of version mismatch between your LLVM headers and LLVM libraries. Are you building clang and LLVM together at the same SVN revision?

Edward, Richard,

You have some kind of version mismatch between your LLVM headers and LLVM
libraries. Are you building clang and LLVM together at the same SVN
revision?

I saw similar (not the same) errors yesterday, and I can confirm that
updating LLVM and Clang to the same rev helps.

Just as a point of interest: I used `make update` before I started
having problems, I was under the impression that that should do a
recursive update of all tools. Is it supposed to work or was I
misinformed?

Thanks,
- Kim