Clang linking errors (visual studio 2013)

I've been using the clang libraries integrated into my program for several months without any problems but today when I updated clang/llvm to latest revision and tried to rebuild my project I got these linker errors:

1>clangCodeGen.lib(CodeGenModule.obj) : error LNK2019: unresolved external symbol "public: static class llvm::error_code __cdecl llvm::IndexedInstrProfReader::create(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::unique_ptr<class llvm::IndexedInstrProfReader,struct std::default_delete<class llvm::IndexedInstrProfReader> > &)" (?create@IndexedInstrProfReader@llvm@@SA?AVerror_code@2@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$unique_ptr@VIndexedInstrProfReader@llvm@@U?$default_delete@VIndexedInstrProfReader@llvm@@@std@@@5@@Z) referenced in function "public: __thiscall clang::CodeGen::CodeGenModule::CodeGenModule(class clang::ASTContext &,class clang::CodeGenOptions const &,class llvm::Module &,class llvm::DataLayout const &,class clang::DiagnosticsEngine &)" (??0CodeGenModule@CodeGen@clang@@QAE@AAVASTContext@2@ABVCodeGenOptions@2@AAVModule@llvm@@ABVDataLayout@6@AAVDiagnosticsEngine@2@@Z)

1>clangCodeGen.lib(CodeGenPGO.obj) : error LNK2019: unresolved external symbol "public: class llvm::error_code __thiscall llvm::IndexedInstrProfReader::getFunctionCounts(class llvm::StringRef,unsigned __int64 &,class std::vector<unsigned __int64,class std::allocator<unsigned __int64> > &)" (?getFunctionCounts@IndexedInstrProfReader@llvm@@QAE?AVerror_code@2@VStringRef@2@AA_KAAV?$vector@_KV?$allocator@_K@std@@@std@@@Z) referenced in function "private: void __thiscall clang::CodeGen::CodeGenPGO::loadRegionCounts(class llvm::IndexedInstrProfReader *)" (?loadRegionCounts@CodeGenPGO@CodeGen@clang@@AAEXPAVIndexedInstrProfReader@llvm@@@Z)

I've deleted my clang and llvm source folders, performed a fresh checkout of both and completely rebuilt everything but I still get these errors.

Anyone know what the problem could be?

Hi,

The problem is not likely to be from the sources but rather the VS build system. 99%+ of the time it works well and but rarely I had to delete the msvc folder and re-create the project files using CMake to fix issues like the one you’re having.

Yaron