Проблема возникает при интеграции Antlr с Visual Studio C 2010 «ошибка LNK2001: неразрешенный внешний символ»

#c #visual-studio-2010 #antlr

#c #visual-studio-2010 #antlr

Вопрос:

MainLexer.h в проекте ‘Checker’ статической библиотеки

     class MainLexerFuncs
    {
    private:
        static int run();
    public: 
            static int start();
    };
  

MainLexer.cpp в проекте проверки статической библиотеки, использующей сторонний инструмент antlr, который обеспечивает основу для построения распознавателей, интерпретаторов, компиляторов и трансляторов из грамматических описаний, содержащих действия на различных целевых языках.

     #include “iostream”
    using namespace std;
    #include "HTMLLexer.hpp"
    #include "HTMLParser.hpp"
    #include "antlr/TokenBuffer.hpp"
    #include "MainLexerLib.h"
    #include “stdexcept”
    using namespace std;

 int MainLexerFuncs::run()
{

    ANTLR_USING_NAMESPACE(std)
    ANTLR_USING_NAMESPACE(antlr)
    try {
        HTMLLexer lexer(cin);
        TokenBuffer buffer(lexer);
        HTMLParser parser(buffer);
        parser.document();
    }
    catch( ANTLRExceptionamp; e )
    {
        cerr << "exception: " << e.getMessage() << endl;
        return -1;
    }
    catch( exceptionamp; e )
    {
        cerr << "exception: " << e.what() << endl;
        return -1;
    }
    cout<<"yes";
    return 0;
    }
     int MainLexerFuncs::start(){
     return MainLexerFuncs::run();
}
  

mainlexer.cpp в проекте ‘MainChecker’ консольного приложения Window в том же решении, где существует Checker Projectc.

         #include "iostream"
        using namespace std;
        #include "MainLexerLib.h"

    int main( int, char** )

    {

        MainLexerFuncs::start();


        return 0;
    }
  

MainCheker — это консольное приложение Windows, использующее статическую библиотеку Checker.библиотека, содержащая файл MainLexer.h и MainLexer.cpp .
Но когда я запускаю MainChecker, появляется следующая ошибка:

 1>------ Build started: Project: mainlexer, Configuration: Debug Win32 ------
1>  mainlexer.cpp
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual __thiscall antlr::TokenBuffer::~TokenBuffer(void)" (??1TokenBuffer@antlr@@UAE@XZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::TokenBuffer::TokenBuffer(class antlr::TokenStream amp;)" (??0TokenBuffer@antlr@@QAE@AAVTokenStream@1@@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::consume(void)" (?consume@CharScanner@antlr@@UAEXXZ)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::consume(void)" (?consume@CharScanner@antlr@@UAEXXZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::panic(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?panic@CharScanner@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::panic(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?panic@CharScanner@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::panic(void)" (?panic@CharScanner@antlr@@UAEXXZ)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::panic(void)" (?panic@CharScanner@antlr@@UAEXXZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::reportError(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?reportError@CharScanner@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::reportError(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?reportError@CharScanner@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::reportError(class antlr::RecognitionException const amp;)" (?reportError@CharScanner@antlr@@UAEXABVRecognitionException@2@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::reportError(class antlr::RecognitionException const amp;)" (?reportError@CharScanner@antlr@@UAEXABVRecognitionException@2@@Z) 
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::reportWarning(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?reportWarning@CharScanner@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::reportWarning(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?reportWarning@CharScanner@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::traceIndent(void)" (?traceIndent@CharScanner@antlr@@UAEXXZ)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::traceIndent(void)" (?traceIndent@CharScanner@antlr@@UAEXXZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::traceIn(char const *)" (?traceIn@CharScanner@antlr@@UAEXPBD@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::traceIn(char const *)" (?traceIn@CharScanner@antlr@@UAEXPBD@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::traceOut(char const *)" (?traceOut@CharScanner@antlr@@UAEXPBD@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::CharScanner::traceOut(char const *)" (?traceOut@CharScanner@antlr@@UAEXPBD@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: bool __thiscall antlr::BitSet::member(unsigned int)const " (?member@BitSet@antlr@@QBE_NI@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: bool __thiscall antlr::BitSet::member(unsigned int)const " (?member@BitSet@antlr@@QBE_NI@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: bool __thiscall antlr::BitSet::member(unsigned int)const " (?member@BitSet@antlr@@QBE_NI@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::MismatchedCharException::MismatchedCharException(int,int,bool,class antlr::CharScanner *)" (??0MismatchedCharException@antlr@@QAE@HH_NPAVCharScanner@1@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::MismatchedCharException::MismatchedCharException(int,int,bool,class antlr::CharScanner *)" (??0MismatchedCharException@antlr@@QAE@HH_NPAVCharScanner@1@@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::BitSet::~BitSet(void)" (??1BitSet@antlr@@QAE@XZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::BitSet::~BitSet(void)" (??1BitSet@antlr@@QAE@XZ)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::BitSet::~BitSet(void)" (??1BitSet@antlr@@QAE@XZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::RecognitionException::toString(void)const " (?toString@RecognitionException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::RecognitionException::toString(void)const " (?toString@RecognitionException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::RecognitionException::toString(void)const " (?toString@RecognitionException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::MismatchedCharException::getMessage(void)const " (?getMessage@MismatchedCharException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::MismatchedCharException::getMessage(void)const " (?getMessage@MismatchedCharException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::RecognitionException::getFileLineColumnString(void)const " (?getFileLineColumnString@RecognitionException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::RecognitionException::getFileLineColumnString(void)const " (?getFileLineColumnString@RecognitionException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::RecognitionException::getFileLineColumnString(void)const " (?getFileLineColumnString@RecognitionException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::MismatchedCharException::MismatchedCharException(int,class antlr::BitSet,bool,class antlr::CharScanner *)" (??0MismatchedCharException@antlr@@QAE@HVBitSet@1@_NPAVCharScanner@1@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::MismatchedCharException::MismatchedCharException(int,class antlr::BitSet,bool,class antlr::CharScanner *)" (??0MismatchedCharException@antlr@@QAE@HVBitSet@1@_NPAVCharScanner@1@@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::MismatchedCharException::MismatchedCharException(int,int,int,bool,class antlr::CharScanner *)" (??0MismatchedCharException@antlr@@QAE@HHH_NPAVCharScanner@1@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::MismatchedCharException::MismatchedCharException(int,int,int,bool,class antlr::CharScanner *)" (??0MismatchedCharException@antlr@@QAE@HHH_NPAVCharScanner@1@@Z)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: virtual __thiscall antlr::Parser::~Parser(void)" (??1Parser@antlr@@UAE@XZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual __thiscall antlr::Parser::~Parser(void)" (??1Parser@antlr@@UAE@XZ)
1>CheckLexer.lib(MainLexerLib.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::ASTRef::~ASTRef(void)" (??1ASTRef@antlr@@QAE@XZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::ASTRef::~ASTRef(void)" (??1ASTRef@antlr@@QAE@XZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::LLkParser::LLkParser(class antlr::TokenBuffer amp;,int)" (??0LLkParser@antlr@@QAE@AAVTokenBuffer@1@H@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::consumeUntil(class antlr::BitSet const amp;)" (?consumeUntil@Parser@antlr@@UAEXABVBitSet@2@@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::consumeUntil(int)" (?consumeUntil@Parser@antlr@@UAEXH@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::match(class antlr::BitSet const amp;)" (?match@Parser@antlr@@UAEXABVBitSet@2@@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::match(int)" (?match@Parser@antlr@@UAEXH@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::matchNot(int)" (?matchNot@Parser@antlr@@UAEXH@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::reportError(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?reportError@Parser@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::reportError(class antlr::RecognitionException const amp;)" (?reportError@Parser@antlr@@UAEXABVRecognitionException@2@@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::reportWarning(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (?reportWarning@Parser@antlr@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::panic(void)" (?panic@Parser@antlr@@UAEXXZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::Parser::traceIndent(void)" (?traceIndent@Parser@antlr@@UAEXXZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::LLkParser::traceIn(char const *)" (?traceIn@LLkParser@antlr@@UAEXPBD@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall antlr::LLkParser::traceOut(char const *)" (?traceOut@LLkParser@antlr@@UAEXPBD@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: unsigned int __thiscall antlr::TokenBuffer::mark(void)" (?mark@TokenBuffer@antlr@@QAEIXZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: void __thiscall antlr::TokenBuffer::rewind(unsigned int)" (?rewind@TokenBuffer@antlr@@QAEXI@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: int __thiscall antlr::TokenBuffer::LA(unsigned int)" (?LA@TokenBuffer@antlr@@QAEHI@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: class antlr::RefCount<class antlr::Token> __thiscall antlr::TokenBuffer::LT(unsigned int)" (?LT@TokenBuffer@antlr@@QAE?AV?$RefCount@VToken@antlr@@@2@I@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::LLkParser::LLkParser(class antlr::TokenStream amp;,int)" (??0LLkParser@antlr@@QAE@AAVTokenStream@1@H@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::LLkParser::LLkParser(class antlr::RefCount<class antlr::ParserInputState> const amp;,int)" (??0LLkParser@antlr@@QAE@ABV?$RefCount@VParserInputState@antlr@@@1@H@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::NoViableAltException::NoViableAltException(class antlr::RefCount<class antlr::Token>,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;)" (??0NoViableAltException@antlr@@QAE@V?$RefCount@VToken@antlr@@@1@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::NoViableAltException::getMessage(void)const " (?getMessage@NoViableAltException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: static struct antlr::ASTRef * __cdecl antlr::ASTRef::getRef(class antlr::AST const *)" (?getRef@ASTRef@antlr@@SAPAU12@PBVAST@2@@Z)
1>CheckLexer.lib(HTMLParser.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::BitSet::BitSet(unsigned long const *,unsigned int)" (??0BitSet@antlr@@QAE@PBKI@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::BitSet::BitSet(unsigned long const *,unsigned int)" (??0BitSet@antlr@@QAE@PBKI@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::CharScanner::CharScanner(class antlr::InputBuffer *,bool)" (??0CharScanner@antlr@@QAE@PAVInputBuffer@1@_N@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::CharBuffer::CharBuffer(class std::basic_istream<char,struct std::char_traits<char> > amp;)" (??0CharBuffer@antlr@@QAE@AAV?$basic_istream@DU?$char_traits@D@std@@@std@@@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::CharScanner::CharScanner(class antlr::InputBuffer amp;,bool)" (??0CharScanner@antlr@@QAE@AAVInputBuffer@1@_N@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::CharScanner::CharScanner(class antlr::RefCount<class antlr::LexerInputState> const amp;,bool)" (??0CharScanner@antlr@@QAE@ABV?$RefCount@VLexerInputState@antlr@@@1@_N@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "class antlr::RefCount<class antlr::Token> antlr::nullToken" (?nullToken@antlr@@3V?$RefCount@VToken@antlr@@@1@A)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: __thiscall antlr::NoViableAltForCharException::NoViableAltForCharException(int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const amp;,int,int)" (??0NoViableAltForCharException@antlr@@QAE@HABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HH@Z)
1>CheckLexer.lib(HTMLLexer.obj) : error LNK2001: unresolved external symbol "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall antlr::NoViableAltForCharException::getMessage(void)const " (?getMessage@NoViableAltForCharException@antlr@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>D:LexerCheckLexerDebugmainlexer.exe : fatal error LNK1120: 51 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
   */ 
  

Пожалуйста, скажите мне, как я могу ее решить? Я буду благодарен вам.

Комментарии:

1. похоже, проблема не в ANTLR, а в оболочке вокруг него. AFAIK ANTLR генерирует файлы C, поэтому библиотека будет C-lib с неотправленными именами функций.

Ответ №1:

Создавая статическую библиотеку (CheckLexer.lib), вам не нужно разрешать все зависимости — так создаются статические библиотеки.

Но вам необходимо разрешить эти используемые зависимости при создании окончательного двоичного файла (исполняемого файла). Поэтому вам необходимо связать ваш исполняемый файл с библиотекой antlr.

Вероятно, вам не хватает соответствующей записи (antlr.lib?) в настройках «Компоновщик> Ввод> Дополнительные зависимости» для вашего исполняемого проекта.