ARMデバイスのWinRTでboostのスレッドライブラリを使用することは可能ですか? ブートストラップ コマンド ライン ユーティリティを使用してブースト ライブラリをビルドしましたが、x86バイナリがビルドされました。を使用してARMを指定しようとしました
b2 --with-thread architecture=arm
しかし、それは私に多くのエラーを与えます。
次に、VS2012で静的libプロジェクトを作成し、スレッドソースファイルを追加してARMにコンパイルしようとしましたが、次のようなコンパイルエラーが発生します
error C2065: 'TLS_OUT_OF_INDEXES' : undeclared identifier
ここで、TLS が WinRT でサポートされていないことがわかりました。そのため、コンパイル エラーが発生していると思います。
これは、bootstrap によってビルドされた x86 バイナリが同じ不正な API を使用しているため、私のアプリは Windows ストア認定に合格しないということですか?
この制限を回避し、WinRT ARM 用の boost::thread をビルドする方法はありますか? (ちなみに、スレッド機能全体は必要ありません。shared_mutex と upgrade_lock だけが必要です。)