6

gtest/gtest.hboost/math/distributions/poisson.hppの両方を含めると、

/opt/local/include/boost/tr1/tuple.hpp:63: error: ‘tuple’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:67: error: ‘make_tuple’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:68: error: ‘tie’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:72: error: ‘tuple_size’ is already declared in this scope
/opt/local/include/boost/tr1/tuple.hpp:73: error: ‘tuple_element’ is already declared in this scope

これら 2 つのライブラリの名前空間が衝突しないようにするにはどうすればよいですか?

4

4 に答える 4

10

BOOST_HAS_TR1_TUPLE定義済みで構築してみてください。Boostとstdライブラリの両方が定義されているようで、バージョンstd::tr1::tupleを無効にする方法がわかりません。stdブーストヘッダーを見ると、すでに定義さBOOST_HAS_TR1_TUPLEれているブーストを通知するために定義する必要があるようです。std::tr1::tuple

これらのヘッダーの両方を含むファイルをコンパイルしようとすると、同様のエラーが発生しましたが、定義すると消えましたBOOST_HAS_TR1_TUPLE

于 2009-07-20T22:23:40.203 に答える
2

gtest.h で GTEST_HAS_TR1_TUPLE を 0 に設定すると、私の場合に役立ちました

于 2012-09-22T08:58:39.973 に答える
2

インクルードの順序を切り替えてみましたか? 他のヘッダー ファイルが物事をもう少し適切に処理する可能性があります。

于 2009-07-20T21:27:46.277 に答える
1

Boost / math / distributions /fisher_f.hppをMicrosoftVisualStudio 2010に含めることができるようにするには、とを定義する必要がBOOST_NO_0X_HDR_TUPLEありましたBOOST_HAS_TR1_TUPLE

于 2011-06-10T17:16:16.637 に答える