Я не могу статически связать библиотеку hunspell с моим проектом C ++ в Visual Studio 2010.
Я скачал hunspell и пошел в папку hunspell-1.3.1\src\win_api
. Я открыл файл libhunspell.vcproj в visual studio 2010 и преобразовал проект. Я построил решение в конфигурации Realease
, и он сгенерировал файл "libhunspel.lib" в папке hunspell-1.3.1\src\win_api\Release\libhunspell
.
В моей простой C ++ консольной программе, использующей hunpell:
Я добавил эту папку с файлом libhunspel.lib в Страницы свойств / Свойства конфигурации / Каталоги VC ++ / Библиотечные каталоги
Я добавил папку «hunspell-1.3.1 \ src \» в Страницы свойств / Свойства конфигурации / Каталоги VC ++ / Включение каталогов
и "libhunspell.lib" в Страницы свойств / Linker / Input / Дополнительные зависимости .
Но это все еще дает мне неразрешенную внешнюю ошибку символа:
Error 2 error LNK2019: unresolved external symbol "__declspec(dllimport) public: int __thiscall Hunspell::spell(char const *,int *,char * *)" (__imp_?spell@Hunspell@@QAEHPBDPAHPAPAD@Z) referenced in function _main C:\Users\Me\Documents\Visual Studio 2010\Projects\hunspell_learning\hunspell_learning\main.obj hunspell_learning
Error 3 error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall Hunspell::Hunspell(char const *,char const *,char const *)" (__imp_??0Hunspell@@QAE@PBD00@Z) referenced in function _main C:\Users\Me\Documents\Visual Studio 2010\Projects\hunspell_learning\hunspell_learning\main.obj hunspell_learning
Error 1 error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall Hunspell::~Hunspell(void)" (__imp_??1Hunspell@@QAE@XZ) referenced in function _main C:\Users\Me\Documents\Visual Studio 2010\Projects\hunspell_learning\hunspell_learning\main.obj hunspell_learning
Error 4 error LNK1120: 3 unresolved externals C:\Users\Me\Documents\Visual Studio 2010\Projects\hunspell_learning\Debug\hunspell_learning.exe 1 1 hunspell_learning
Понятия не имею, что может быть не так. Я также пытаюсь с динамической библиотекой. Построил решение Hunspell в Release_dll
конфигурации и только что изменил Включите каталоги в мое приложение на hunspell-1.3.1\src\win_api\Release_dll\libhunspell
и он скомпилируется. Мне нужно только скопировать libhunspell.dll туда, где моя исполняемая программа, так что dll будет загружена.