cppcmsをビルドしようとすると、次のようなエラーが発生します。
エラー184エラーLNK2019:未解決の外部シンボル__imp_pcre_compileが関数 "public:void __cdecl booster :: regex ::assign(class std :: basic_string、class std :: allocator> const&、int)"(?assign @ regex @ booster)で参照されています@@ QEAAXAEBV?$ basic_string @ DU?$ char_traits @ D @ std @@ V?$ allocator @ D @ 2 @@ std @@ H @ Z)C:\ Stuff \ Development \ CPP \ cppcms-1.0.2 \ build \ booster \ pcre_regex.obj エラー185エラーLNK2019:未解決の外部シンボル__imp_pcre_execが関数 "public:bool __cdecl booster :: regex :: match(char const *、char const *、class std :: vector、class std :: allocator >>&、int)で参照されていますconst "(?match @ regex @ booster @@ QEBA_NPEBD0AEAV?$ vector @ U?$ pair @ HH @ std @@ V?$ allocator @ U?$ pair @ HH @ std @@@ 2 @@ std @@ H @ Z)C:\ Stuff \ Development \ CPP \ cppcms-1.0.2 \ build \ booster \ pcre_regex.obj エラー186エラーLNK2019:未解決の外部シンボル__imp_pcre_fullinfoが関数 "public:void __cdecl booster :: regex :: assign(class std :: basic_string、class std :: allocator> const&、int)"(?assign @ regex @ booster)で参照されています@@ QEAAXAEBV?$ basic_string @ DU?$ char_traits @ D @ std @@ V?$ allocator @ D @ 2 @@ std @@ H @ Z)C:\ Stuff \ Development \ CPP \ cppcms-1.0.2 \ build \ booster \ pcre_regex.obj エラー187エラーLNK2019:未解決の外部シンボル__imp_pcre_mallocが関数 "public:__cdecl booster :: regex :: data :: data(struct booster :: regex :: data const&)"(?? 0data @ regex @ booster @@ QEAA @ AEBU012 @@ Z)C:\ Stuff \ Development \ CPP \ cppcms-1.0.2 \ build \ booster \ pcre_regex.obj エラー188エラーLNK2019:未解決の外部シンボル__imp_pcre_freeが関数__catch $ ?? 0data @ regex @ booster @@ QEAA @ AEBU012 @@ Z $ 0 C:\ Stuff \ Development \ CPP \ cppcms-1.0.2 \ build \ booster\pcre_regexで参照されています.obj エラー189エラーLNK2019:未解決の外部シンボル__imp_htonsが関数 "public:__cdecl booster :: aio :: endpoint :: endpoint(class std :: basic_string、class std :: allocator> const&、int)"(?? 0endpoint @ aio @ booster @@ QEAA @ AEBV?$ basic_string @ DU?$ char_traits @ D @ std @@ V?$ allocator @ D @ 2 @@ std @@ H @ Z)C:\ Stuff \ Development \ CPP \ cppcms- 1.0.2 \ build \ booster \ endpoint.obj
私の環境は、Visual Studio2012ProfessionalとCMake2.8.9を使用するWindows764ビットです。
コンパイルするすべてのものについて、64ビットコンパイラを使用するVS2012のソリューションを生成するようにCMakeを構成します。ライブラリをコンパイルするときは、リリースバージョンをコンパイルします。
まず、Zlib1.2.7を問題なくコンパイルします。次に、pcre-8.31を問題なくコンパイルします。
次に、cppcms-1.0.2をコンパイルする時間がかかると、前に指摘したように、大量のエラーが発生します。CMakeでcppcmsを設定するとき、PYTHON2.7を設定しています。
C:/Stuff/Development/CPP/Zlib/zlib-1.2.7/buildZLIB_INCLUDE_DIRの場合、その最後に/Release/zlibstatic.libを追加するだけで、使用しているZLIBライブラリがありますが、PCREが正しく設定されているかどうかはわかりません。
PCREにはCMakeにincludeとinclude2があるので、それらに何を入れるべきかわからなかったので、pcre-8.31ルートディレクトリとpcre-8.31ビルドディレクトリを実行しました。PCRE_LIBには、pcre-8.31 / build / Release/pcre.libを使用します。
ライブラリのビルドディレクトリをすべて削除して、最初からやり直しましたが、まだこれらの問題があり、何が原因であるかわかりません。後で、cppcmsビルドディレクトリ内のブースターにも解決策があることに気付いたので、最初にビルドしました。3つのプロジェクトが失敗しましたが、ほとんどが成功しましたが、cppcmsビルドには違いはありませんでした。
私が何をしていたかについて他に質問がある場合は、質問してください。で編集します。