いくつかの操作に依存するプロジェクトがありますlibiconv。
Visual Studio 2008用にプリコンパイルされたバイナリを使用しiconv.libていましたが、Visual Studio 2010に移行する必要があり、プリコンパイルされたバイナリは使用できなくなりました。
自分でコンパイルすることにしましたが、libiconvドキュメントに記載されているように、MSVCコンパイラの公式サポートはありません。gccただし、バイナリインターフェイスがに残っている限り、MSVCコンパイラとバイナリ互換性のある静的ライブラリを生成できる場所を読みましたC。それはおかしなことに聞こえましたが、私はそれを試してみました、そしてそれは実際にほとんどうまくいきました。
私はそれをコンパイルし、名前を変更libiconv.aしてiconv.lib、リンクしようとしました。(これが悪い考えである場合は、私に知らせてください)。
最初にリンクエラーが発生しました:
1>iconv.lib(iconv.o) : error LNK2001: unresolved external symbol ___chkstk
いくつかの調査の後、フラグlibiconvを追加して(x86バージョンとx64バージョンの両方で)再コンパイルしました。-static-libgcc
それは機能しましたが、私のプログラムのx64リリースでのみ機能しました。x86リリースは常にまったく同じエラーで失敗します。
これを機能させるにはどうすればよいですか?