1

iOSでboostをコンパイルしようとしていますが、プロジェクトを起動しようとするたびに、次のようなエラーが発生します。

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/usr/include/c++/4.2.1/bits/c++locale.h:79:28: No member named 'vsnprintf' in namespace 'std'; did you mean 'vsprintf'?
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/usr/include/c++/4.2.1/bits/c++locale.h:79:60: Too many arguments to function call, expected 3, have 4

主な理由はコンパイラだと思います。いくつかの設定を変更してコンパイラで遊んでみますが、新しいエラーが発生するたびに、コンパイラの現在の設定を次に示します。

  1. C言語ダイアレクター-C99[-std= c99]
  2. C++言語ダイアレクター-C++98 [-std = C ++ 98]
  3. C++標準ライブラリ-libstdc++

Boostバージョンは1.44.0、XCodeバージョンは4.5です

iOSでboostをコンパイルするためにプロジェクトを構成する方法を知っている人はいますか?

4

1 に答える 1

3

このリファレンスページによると、C ++ 11で導入されたため、試してみるvsnprintf()代わりに(ただし、コンパイラはC ++ 11で導入されたすべての機能をサポートしていない場合があります)。-std=C++98-std=C++0x

于 2012-10-09T13:27:24.493 に答える