2015-12-27 10 views
9

私はBoost(http://kratos-wiki.cimne.upc.edu/index.php/Main_Page)のプロジェクトに従事していますが、このプロジェクトは現在C++ 03のみをサポートしています。C++の古いstdでBoostをコンパイルするには? (C++ 03特に)

-std = C++ 03

:GCCの最後の更新と++(V.5)はC++ 11は、技術的に私が追加CXX_FLAGSを変更する問題を解決し、デフォルトのスタンダードとなっています

問題はBoostライブラリに付属しています。私はC++ 03 stdでコンパイルできません(コンパイルしたstdを調べる方法はわかりません)。私が持っている - "のstd = C++ 03"

./b2 --with-シリアライズCXXFLAGS = --with-pythonの段階をインストールします。私はブーストをコンパイルするには、次のコマンドを使用してみました

<toolset>gcc:<cxxflags>-std=gnu++03 
    <toolset>clang:<cxxflags>-std=c++03 

しかし、問題は、私は警告の以下のようなものを得るプロジェクト全体をコンパイル(セベを持続:あまりにも次の行を追加し、Jamrootファイルを変更してみましたRAL回):

/usr/local/include/boost/type_traits/detail/template_arity_spec.hpp:13:84:注:の#pragmaメッセージ:注:このヘッダの使用は(template_arity_spec.hpp)廃止され #プラグマメッセージ(「注:このヘッダの使用(template_arity_spec.hpp)が廃止されました」)

私は私の変更を有効にしていないと思われる理由です。

は、私はあなたが安全に、今のところ、これらの警告を無視することができると思い、あなたの助け

+1

Boost、googleとの既知の問題であるようです。 –

+0

私はすでにしていましたが、おそらく私はそれを正しい方法でやっていませんでした。 – user5288

+2

http://permalink.gmane.org/gmane.comp.lib.boost.devel/264164を参照してください。それらは警告だけなので、作業を続行して修正を待つことができます。また、必要に応じて古いバージョンのブーストをテストすることもできます。 – user2672165

答えて

13

いただき、誠にありがとうございます。私はgcc 5.2.1とstd = C++ 11で1_60_0を追加してコンパイルしていますが、同じ警告が出ます。 ticketがありますが、現時点では問題はありません。私はブーストコードに2つの[の#pragma警告]行をコメントアウトので、私は私のビルドに気が散る出力の多くを得ることはありません:

ブースト/ type_traits /詳細/ template_arity_spec.hppライン13:

// noisy: # pragma message("NOTE: Use of this header (template_arity_spec.hpp) is deprecated") 

ブースト/ type_traits /ディテール/ bool_trait_def.hppライン18:

// noisy: # pragma message ("NOTE: Use of this header (bool_trait_def.hpp) is deprecated") 

UPDATE問題が依然としてブースト1.61.0に存在します。私は再び同じ正確な修正を使用しました。

+2

同じです。これは今のところ無視することができます。チケットへのリンクありがとう。 –

+1

私はそれを信じることはできませんが、1.61.0でこれを修正していないようです。まあ、同じ正確なコード、同じ正確な修正はまだ動作します。 – moodboom

関連する問題