Я искал и нашел кучу статей об использовании Hunspell, но до сих пор ни одна из них не помогла мне. C ++ — Использование HunSpell 1.3.2 с Visual Studio 2010 кажется, именно то, что я пытаюсь сделать, но после того, как я следую вместе с вопросом, ответом и связанным материалом, у меня все еще есть проблемы.
По сути, я довольно новичок в C ++ и пытаюсь узнать, как включить Hunspell в приложение, над которым я работаю. Поскольку это для меня в новинку, я пытаюсь начать с создания простого консольного приложения, а затем перейти оттуда.
Вот что у меня есть (опять же, я выполнил все шаги, изложенные в связанном вопросе)
#include "stdafx.h"#include <iostream>
#include <string>
#include <hunspelldll.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
Hunspell *spellObj = (Hunspell *)hunspell_initialize("HunSpell-dic\\en_us.aff",
"HunSpell-dic\\en_us.dic");
char str[60];
cin >> str;
int result = hunspell_spell(spellObj, str);
if (result==0)
cout << "Spelling Error!";
else
cout << "Correct Spelling!";
hunspell_uninitialize(spellObj);
return 0;
}
Я добавил пути к своим свойствам конфигурации и к компоновщику, но при сборке я получаю следующие ошибки:
Error 1 error LNK2019: unresolved external symbol __imp__hunspell_uninitialize referenced in function _wmain C:\Users\owner\Documents\My Code Vault\Sandbox\2010Sandbox\Console_Spellcheck\Console_Spellcheck.obj Console_Spellcheck
Error 2 error LNK2019: unresolved external symbol __imp__hunspell_spell referenced in function _wmain C:\Users\owner\Documents\My Code Vault\Sandbox\2010Sandbox\Console_Spellcheck\Console_Spellcheck.obj Console_Spellcheck
Error 3 error LNK2019: unresolved external symbol __imp__hunspell_initialize referenced in function _wmain C:\Users\owner\Documents\My Code Vault\Sandbox\2010Sandbox\Console_Spellcheck\Console_Spellcheck.obj Console_Spellcheck
Error 4 error LNK1120: 3 unresolved externals C:\Users\owner\Documents\My Code Vault\Sandbox\2010Sandbox\Debug\Console_Spellcheck.exe Console_Spellcheck
Я уверен, что это просто что-то простое, что я пропустил, будучи новичком в этом, но я тянул свои волосы в течение нескольких часов, но безуспешно. Любые предложения будут встречены с безудержной благодарностью 🙂
Вам нужно указать .lib файл как дополнительную входную зависимость компоновщика
Похоже, я смог найти ответ. После прочтения: Проблема со статической связью библиотеки hunspell в visual studio 2010, Я попытался #define HUNPSPELL_STATIC в моем файле stdafx.h, и это устранило ошибку, с которой я столкнулся.