3

ブースト 1.56 でカサブランカをビルドしようとしていますが、ブーストの警告がカサブランカの-Werrorフラグによってエラーに変わったため、ビルドが失敗し続けます。

例えば:

CXX=g++ BOOST_ROOT=${boost} cmake .. -DCMAKE_BUILD_TYPE=Release

次のようなエラーが発生します(表示するには多すぎます)

/home/matt/workspace/opal2/o2linux64/Libs/boost/1.56/include/boost/system/error_code.hpp:222:36: error: ‘boost::system::errno_ecat’ defined but not used [-Werror=unused-variable]
 static const error_category &  errno_ecat     = generic_category();
                                ^
/home/matt/workspace/opal2/o2linux64/Libs/boost/1.56/include/boost/system/error_code.hpp:223:36: error: ‘boost::system::native_ecat’ defined but not used [-Werror=unused-variable]
 static const error_category &  native_ecat    = system_category();
                                ^
cc1plus: all warnings being treated as errors
make[2]: *** [src/CMakeFiles/cpprest.dir/http/client/http_client_msg.cpp.o] Error 1

Werror人々が1.56でビルドし、無効に することについて言及していない投稿を見つけましたが、Googleで解決策を見つけることができないようですsrc/CMakeList.txt(コードのビルドを許可しているようです)

4

1 に答える 1

2

Casablanca の CMakeLists.txt を編集しないようにするには、cmake コマンドの実行時に -DWERROR=OFF パラメータを追加します。

cmake -DCMAKE_BUILD_TYPE=Release -DWERROR=OFF <path to src>

cmake はオプション値をキャッシュできるため、クリーンなビルド ディレクトリで cmake を再実行することをお勧めします。

于 2016-10-07T02:28:19.260 に答える