質問

私は(私はそれを使用する必要があるため)ブーストプリプロセッサライブラリを学んでいる、と私は、ファイルの反復メカニズムを試してみたかったです。私はa.cppとb.hppと最小限のプロジェクトを設定しました。私は何をしようとしているが、ブースト頁を経由して多くの時間b.hpp含めてです:

#include <boost/preprocessor/iteration/iterate.hpp>

#define BOOST_PP_ITERATION_LIMITS (0, 5)
#define BOOST_PP_FILENAME_1 "b.hpp"
#include BOOST_PP_ITERATE()

私は(プリプロセッサの結果を見ることが-Eで)コンパイルしよう:

g++ -E a.cpp > pp_result

私はこのエラーを得ます:

  

a.cppからインクルードファイルで:   /usr/local/include/boost/preprocessor/iteration/detail/iter/forward1.hpp:47:37:エラー:b.hpp:そのようなファイルやディレクトリはありません。

b.hppが同じディレクトリにある、私は私が間違っをdooingてるものを見ることができません。これは、G ++検索が(私のブーストバージョンは1.44である)forward1.hppと同じディレクトリにb.hppが、私のコードは動作するはずブーストのマニュアルを参照して、以下のようです。

んでは誰もが同じ問題を経験した?

役に立ちましたか?

解決

うん、あなたはそれの仕事をするために、コマンドラインに-I.を追加する必要があります。これは、あなたがにしてGCCを開始したディレクトリは、コンパイラは、ファイルb.hppを見つけることができるように、検索パスを含める追加します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top