hunspell ライブラリを Visual Studio 2010 の C++ プロジェクトに静的にリンクできません。
hunspell をダウンロードしてhunspell-1.3.1\src\win_api
フォルダーに移動しました。Visual Studio 2010 で libhunspell.vcproj ファイルを開き、プロジェクトを変換しました。構成でソリューションをビルドするRealease
と、フォルダーに「libhunspel.lib」ファイルが生成されましたhunspell-1.3.1\src\win_api\Release\libhunspell
。
hunpell を使用する単純な C++ コンソール プログラムでは、次のようになります。
プロパティ ページ/構成プロパティ/VC++ ディレクトリ/ライブラリ ディレクトリに libhunspel.lib ファイルを含むこのフォルダーを追加しました。
「hunspell-1.3.1\src\」フォルダをプロパティ ページ/構成プロパティ/VC++ ディレクトリ/インクルード ディレクトリに追加しました。
および "libhunspell.lib" をProperty Pages/Linker/Input/Additional Dependancesに追加します。
しかし、それでも未解決の外部シンボル エラーが表示されます。
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 がロードされます。