Android NDK で C++11 スレッド機能を使用しようとしていますが、最新のコンパイラを使用する方法がわかりません。
私は Clang 3.2 を持っており、iOS アプリをビルドできます。Android NDKでそれを行う方法があるのだろうか?
そうでない場合、gcc 4.8 でどのようにビルドすればよいですか?
Android NDK で C++11 スレッド機能を使用しようとしていますが、最新のコンパイラを使用する方法がわかりません。
私は Clang 3.2 を持っており、iOS アプリをビルドできます。Android NDKでそれを行う方法があるのだろうか?
そうでない場合、gcc 4.8 でどのようにビルドすればよいですか?
(私は NDK バージョン r9b に対処しています) アプリケーションのすべてのソース コード (および含まれるすべてのモジュール) に対して C++11 サポートを有効にするには、Application.mk で次の変更を行います。
# use this to select gcc instead of clang
NDK_TOOLCHAIN_VERSION := 4.8
# OR use this to select the latest clang version:
NDK_TOOLCHAIN_VERSION := clang
# then enable c++11 extentions in source code
APP_CPPFLAGS += -std=c++11
# or use APP_CPPFLAGS := -std=gnu++11
それ以外の場合、モジュールでのみ C++11 をサポートする場合は、APP_CPPFLAGS を使用する代わりに、この行を Android.mk に追加します。
LOCAL_CPPFLAGS += -std=c++11
NDK リビジョン 8eには、Clang 3.2 コンパイラがバンドルされています。それを使用すれば、準備完了です。