5

XCodeでは、最近、ブーストを使用する処理ライブラリを作成してテストしました。IDEで基本的なプロジェクトをセットアップし、コード化するだけで、正常にビルドされます。

そのライブラリを別のアプリケーションで使用したいと思います。他のアプリケーションのxcodeプロジェクトは、サードパーティのツールを使用して自動的に作成されました。ブーストベースのライブラリをこの他のアプリケーションに含めようとすると、次のようなエラーが発生します。。。

No member named 'forward' in namespace 'std'

また、行。。

#include <tuple>

プリプロセッサエラーが発生します

'tuple' file not found

元のライブラリが私のマシンで問題なくビルドされるので、エラーはビルド設定の違いによるものである必要がありますが、違いを確認できず、2つの異なるプロジェクトのビルド設定を比較する良い方法がわかりません。誰かが私に問題を引き起こしているかもしれないビルド設定を提案できますか?

編集:

両方のプロジェクトで、

  • C / C ++/Objective-C用のコンパイラ=AppleLLVMコンパイラ3.0

  • C++言語方言=コンパイラのデフォルト

  • C++標準ライブラリ=コンパイラのデフォルト

編集2[解決済み]:

  • ターゲット設定でC++11方言を有効にしました。DoH!
4

1 に答える 1

6

プロジェクトは C++11 としてコンパイルされ、C++11 標準ライブラリを使用しています (std::forward とヘッダーは新規です)。元のプロジェクトは、C++03 標準ライブラリを使用して C++03 としてコンパイルされるように見えるため、これらの新機能は利用できません。

于 2012-06-08T12:06:26.700 に答える