I am asking on multiple forums because I am desperate!

Hi, firstly I would just like to say that I am not a C++ programmer and I never intend to be - I am an SQL, javascript and PHP developer. For a module at University I have to alter a chatbot project to demonstrate AI and NLP.

While my own exasperation (at being handed an assignment that requires a background knowledge in a subject matter that I have never been taught in my 3 years here) is irrelevant, I am attempting to dive in and learn a bit of C++, as computer logic is, I hope, universal across languages. My point is that I am not knowledgeable in this, and I apologise for that. I have honestly searched for this error (there is a lot) but I don't understand some of the solutions.

Anyway, I am getting these errors when I compile:

1>Eliza.obj : error LNK2019: unresolved external symbol "public: void __thiscall Lex::load(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?load@Lex@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function _main

1>Eliza.obj : error LNK2019: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall Lex::partOfSpeech(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?partOfSpeech@Lex@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V23@@Z) referenced in function "void __cdecl showLexValues(class std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > > &)" (?showLexValues@@YAXAAV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z)

1>Eliza.obj : error LNK2019: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall Lex::meaning(void)" (?meaning@Lex@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) referenced in function "void __cdecl showLexValues(class std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > > &)" (?showLexValues@@YAXAAV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z)

1>Eliza.obj : error LNK2019: unresolved external symbol "public: bool __thiscall Lex::contains(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?contains@Lex@@QAE_NAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "void __cdecl showLexValues(class std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > > &)" (?showLexValues@@YAXAAV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z)

1>C:\Users\Minky\Documents\chatbot\Eliza4\Debug\elizav4.exe : fatal error LNK1120: 4 unresolved externals

I have tried changing the subsystem, as I read - this did not work. I have tried looking for the things that I am supposed to link, but I don't know how. I have a new installation of Visual Studio 2005.

Can anyone help me please? I really would like to start making headway on this immediately.

I have uploaded the project file
http://www.mediafire.com/?3xvnb37449i65x9


This code should work straight out the box, so to speak, as it is the project files that you are supposed to start with and subsequently add to.

With that in mind, do you think there is a problem with my configuration? Are the project files supposed to go somewhere specific so that VS can find and reference libraries or something (I'm clutching at straws here)? As I said, I had found a thread talking about subsystems, which I tried changing, with no joy

Thankyou very much in advance

Somebody, please. I can't keep staring at the screen wondering what on earth I'm supposed to do.

All I want to do is START my assignment

Unresolved external generally means that your code is fine, but you're trying to link to already compiled libraries that can't be found.

Looks like you have an executable, so I'm guessing you're using dynamic linking and the failure is at runtime. What happens if you switch to static linking? There's an option for it hidden somewhere in that mess of menus.

This article has been dead for over six months. Start a new discussion instead.