2016-08-13 9 views
2

私はboost::fiberをUbuntuの他のブーストライブラリと一緒にビルドしようとしています。私はsourceforgeからブーストバージョン1.61をダウンロードしました。そして、私はのバージョン1.0をboost :: fiberからgithubからダウンロードしました。私はディレクトリブースト/ libsブースト配布のディレクトリをコピーしました。私は建物のために使用するコマンドは次のとおりです。他のブーストライブラリと一緒にboost :: fiberをビルドするには?

sudo ./b2 cxxflags="-std=c++14" --build-type=minimal --build-dir=/home/bobeff/projects/build --layout=system install 

グラムの++の使用されたバージョンです:

グラム++(Ubuntuの5.4.0-6ubuntu1〜16.04.2)5.4.0 20160609

ブースト::繊維はコンパイルに失敗し、多くのエラーの最初は、次のとおりです。

gcc.compile.c++ /home/bobeff/projects/build/boost/bin.v2/libs/fiber/build/gcc-5.4.0/release/link-static/threading-multi/algorithm.o 
In file included from libs/fiber/src/algorithm.cpp:9:0: 
./boost/fiber/fiber_context.hpp:91:5: error: invalid use of template-name ‘boost::context::execution_context’ without an argument list 
    context::execution_context      ctx_; 
+0

boost :: contextをビルドしてインストールしましたか?あなたはboost :: fibreにあなたのboostインストールの場所を与えましたか? –

+0

私が書いたように、* boost/libs *ディレクトリの他のライブラリに* boost :: fiber *が追加された状態で、全部のboostディストリビューションをビルドします。 * boost :: context *は正常にビルドされています。しかし* boost :: fibre *がビルドされているときに* boost :: context *が見つからないことがあります。あなたはそれを正しく行う方法を知っていますか? – bobeff

+0

私はboost :: fiberを構築したことがないので、手伝ってはいけません。私はただ思っているだけで、boost :: fibreが提供する機能はすでにboost :: coroutineで利用可能ですか? –

答えて

-2

boost.contextをC++ 14でもビルドしましたか? 必要なC++機能(lambdas、nullptrなど)がすべてサポートされているかどうかを確認してください。 b2/bjamを実行するとstdoutに表示されます。--reconfigureオプションでb2/bjamを呼び出さなければならないことがあります。 代替手段として、boost-1.62がリリースされるまで待つことができます(28.09.2016?)。

+0

私はビルドコマンドを掲示し、私は 'cxxflags =" - std = C++ 14 "'を使っていることがわかります。私はこれが* C++ 14 *にすべての機能を含めることができると思いますか? – bobeff

+0

なし、以前の実行から構成チェックの結果がキャッシュされています。 - Boost.Config機能チェック:cxx11_auto_declarations:はい - Boost.Config機能チェック:cxx11_constexpr:はい - Boost.Config機能チェック:cxx11_defaulted_functions:はい - ブースト.Config機能チェック:cxx11_final:yes - Boost.Config機能チェック:cxx11_hdr_tuple:yes ... – xlrg