Я создал проект с намерением использовать в нем функции hunspell. Я работаю в Ubuntu. Я установил и скомпилировал библиотеку hunspell и связал ее с g ++ -o wc.exe -lhunspell-1.6 wordcheck.cxx, и все выглядело нормально. Но когда я попытался скомпилировать и запустить свой проект, у меня возникли некоторые ошибки.
#include <iostream>
#include "hunspell/hunspell.hxx"
using namespace std;
int main(int argc,char** argv)
{
FILE* lst=fopen("wordlist.txt","r");
if(!lst)
{
cerr<<"Can not open file\n";
return 1;
}
Hunspell* hs=new Hunspell(argv[1],argv[2]);
delete hs;
return 0;
}
и ошибки были:
/home/alex2/Документы/bO/wordcheck.cxx:14: неопределенная ссылка на Hunspell::Hunspell(char const*, char const*, char const*)'
Hunspell :: ~ Hunspell ()»
/home/alex2/Документы/bO/wordcheck.cxx:15: undefined reference to
collect2: error: ld вернул 1 состояние выхода
на нас
Я понятия не имею, что не так. Я пытался с помощью
Hunspell* hs=new Hunspell();
и получил, что для этого есть кандидат, требующий трех параметров:
/usr/local/include/hunspell/hunspell.hxx:115:3: примечание: кандидат: Hunspell :: Hunspell (const char *, const char *, const char *)
Hunspell (const char * affpath, const char * dpath, const char * key = NULL);
Разница только в char const * и const char *, но я всегда думал, что это одно и то же. Весь проект подобен файлу примера, который предоставляет hunspell, и я понятия не имею, что я делаю неправильно и почему моя вещь не работает.
Задача ещё не решена.
Других решений пока нет …