B.V.
B.V.

Reputation: 73

Undefined symbols for architecture x86_64 with llvm and clang

I have a cpp file which is including some header files of OCLint. Those header files internally includes clang and llvm headers like AST,ASTMatchers etc...

I have already specified the required header search path in the Build Settings as :-

../Downloads/clang+llvm-3.3-x86_64-apple-darwin12/include

But when I build I get the following error :-

Undefined symbols for architecture x86_64: "llvm::RefCountedBaseVPTR::anchor()", referenced from: vtable for clang::ast_matchers::internal::matcher_isPublic0Matcher in File.o vtable for clang::ast_matchers::internal::matcher_isProtected0Matcher in File.o vtable for clang::ast_matchers::internal::matcher_isPrivate0Matcher in File.o vtable for clang::ast_matchers::internal::matcher_hasAnyTemplateArgument0Matcher in File.o vtable for clang::ast_matchers::internal::matcher_ignoringImpCasts0Matcher in File.o vtable for clang::ast_matchers::internal::matcher_ignoringParenCasts0Matcher in File.o vtable for clang::ast_matchers::internal::matcher_ignoringParenImpCasts0Matcher in File.o ... "llvm::Regex::match(llvm::StringRef, llvm::SmallVectorImpl)", referenced from: clang::ast_matchers::internal::matcher_matchesName0Matcher::matches(clang::NamedDecl const&, clang::ast_matchers::internal::ASTMatchFinder, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const in File.o "llvm::Regex::Regex(llvm::StringRef, unsigned int)", referenced from: clang::ast_matchers::internal::matcher_matchesName0Matcher::matches(clang::NamedDecl const&, clang::ast_matchers::internal::ASTMatchFinder*, .......... etc .....

Did I forget to include some header search path ?

Upvotes: 1

Views: 1278

Answers (1)

Xiaoguang Sun
Xiaoguang Sun

Reputation: 1

Probably forgot to add dependent library. Add these and try again

-lLLVMCore -lLLVMSupport -lLLVMJIT -lLLVMRuntimeDyld -lLLVMExecutionEngine -lLLVMCodeGen -lLLVMObjCARCOpts -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMMC -lLLVMObject -lLLVMCore -lLLVMSupport -lLLVMMCJIT -lLLVMJIT -lLLVMCodeGen -lLLVMObjCARCOpts -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMRuntimeDyld -lLLVMExecutionEngine -lLLVMTarget -lLLVMMC -lLLVMObject -lLLVMCore -lLLVMSupport -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMMCParser -lLLVMCodeGen -lLLVMObjCARCOpts -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMX86Desc -lLLVMX86Info -lLLVMTarget -lLLVMX86AsmPrinter -lLLVMMC -lLLVMObject -lLLVMX86Utils -lLLVMCore -lLLVMSupport

Upvotes: -1

Related Questions