Hi Ted, Yeah, I had an old checkout of the normal llvm tree from svn (from a few weeks ago) in there, but the clang compile instructions didn't actually say that I needed to run 'make' in the llvm tree... so I didn't.
I did 'make libs-only' and then re-tried 'make' in the tools/clang dir, and that worked great! Having fun playing with it now. :) Thanks! -Chris On Oct 31, 2007, at 12:21 AM, Ted Kremenek wrote: > Hi Chris, > > The undefined symbols are functions defined in the mainline LLVM > subversion repository (and not yet part of an actual release of > LLVM). They are actually part of the libraries LLVMBitWriter.a and > LLVMBitReader.a, and were added to those libraries within the last > week or so. > > I'm not certain what version of LLVM you are using, but please try > updating to the latest (SVN version) of LLVM, rebuilding the core > LLVM libraries, and see if the problem remains when building clang. > It is odd that you are only getting linker errors; if you didn't > have the supporting header files you wouldn't be able to compile > anything (so I imagine you are already using a fairly recent version > of LLVM). > > Ted > > On Oct 30, 2007, at 11:50 PM, Chris Lee wrote: > >> I'm getting this error trying to compile clang. Any ideas? >> >> llvm[1]: Linking Release executable clang (without symbols) >> Undefined symbols: >> "llvm::Serializer::EmitInt(unsigned int)", referenced from: >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> >> llvm::SerializeTrait<clang::IdentifierInfo>::Emit(llvm::Serializer&, >> clang::IdentifierInfo const&)in libclangBasic.a(IdentifierTable.o) >> "llvm::Deserializer::ReadCStr(std::vector<char, std::allocator<char> >>> &, bool)", referenced from: >> >> llvm >> ::SerializeTrait<clang::IdentifierTable>::Read(llvm::Deserializer&, >> clang::IdentifierTable&)in libclangBasic.a(IdentifierTable.o) >> "llvm::Deserializer::~Deserializer()", referenced from: >> (anonymous >> namespace)::SerializationTest::ReadTable(llvm::sys::Path&) >> in SerializationTest.o >> "llvm::Serializer::EmitRecord()", referenced from: >> (anonymous >> namespace)::SerializationTest::WriteTable(llvm::sys::Path&, >> clang::IdentifierTable*) in >> SerializationTest.o >> "llvm::Deserializer::ReadInt()", referenced from: >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierInfo>::Read(llvm::Deserializer&, >> clang::IdentifierInfo&)in libclangBasic.a(IdentifierTable.o) >> >> llvm >> ::SerializeTrait<clang::IdentifierTable>::Read(llvm::Deserializer&, >> clang::IdentifierTable&)in libclangBasic.a(IdentifierTable.o) >> "llvm::Deserializer::Deserializer(llvm::BitstreamReader&)", >> referenced from: >> (anonymous >> namespace)::SerializationTest::ReadTable(llvm::sys::Path&) >> in SerializationTest.o >> "llvm::SerializeTrait<unsigned int>::Emit(llvm::Serializer&, >> unsigned int)", referenced from: >> >> llvm::SerializeTrait<clang::IdentifierTable>::Emit(llvm::Serializer&, >> clang::IdentifierTable const&)in libclangBasic.a(IdentifierTable.o) >> "llvm::Serializer::EmitCStr(char const*)", referenced from: >> >> llvm::SerializeTrait<clang::IdentifierTable>::Emit(llvm::Serializer&, >> clang::IdentifierTable const&)in libclangBasic.a(IdentifierTable.o) >> "llvm::Serializer::~Serializer()", referenced from: >> (anonymous >> namespace)::SerializationTest::WriteTable(llvm::sys::Path&, >> clang::IdentifierTable*) in >> SerializationTest.o >> "llvm::MemoryBuffer::getMemBufferCopy(char const*, char const*, char >> const*)", referenced from: >> clang::Preprocessor::EnterMainSourceFile(unsigned int)in >> libclangLex.a(Preprocessor.o) >> "llvm::cl::ParseCommandLineOptions(int, char**, char const*)", >> referenced from: >> _main in clang.o >> "llvm::Serializer::Serializer(llvm::BitstreamWriter&, unsigned >> int)", referenced from: >> (anonymous >> namespace)::SerializationTest::WriteTable(llvm::sys::Path&, >> clang::IdentifierTable*) in >> SerializationTest.o >> "llvm::APInt::APInt(unsigned int, unsigned int, unsigned long long >> const*)", referenced from: >> clang::Expr::isIntegerConstantExpr(llvm::APSInt&, >> clang::ASTContext&, clang::SourceLocation*, bool) constin >> libclangAST.a(Expr.o) >> clang::Sema::ActOnNumericConstant(clang::Token const&)in >> libclangSEMA.a(SemaExpr.o) >> clang::Sema::ActOnNumericConstant(clang::Token const&)in >> libclangSEMA.a(SemaExpr.o) >> clang::Sema::ActOnNumericConstant(clang::Token const&)in >> libclangSEMA.a(SemaExpr.o) >> llvm::APInt::isIntN(unsigned int) constin >> libclangSEMA.a(SemaExpr.o) >> ld: symbol(s) not found >> collect2: ld returned 1 exit status >> _______________________________________________ >> cfe-dev mailing list >> [email protected] >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev > _______________________________________________ cfe-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
