AndroidでC++を使用してコードを機能させることができました。
2 つの困難がありました。
1 - push_arm によって作成されたアーム環境からの c++ ヘッダーへのアクセス。レシピに正しいインクルードを追加し、デフォルトの CXX var を変更する必要がありました。
#dirty hack
export C_INCLUDE="-I$ANDROIDNDK/sources/cxx-stl/gnu-libstdc++/$TOOLCHAIN_VERSION/include/ -I$ANDROIDNDK/sources/cxx-stl/gnu-libstdc++/$TOOLCHAIN_VERSION/libs/armeabi/include/"
export OLD_BOUBOU=$CC
export CC="$CXX $C_INCLUDE"
try $BUILD_PATH/python-install/bin/python.host setup.py install -O2
#try cp libgnustl_shared.so $LIBS_PATH/
try cp $ANDROIDNDK/sources/cxx-stl/gnu-libstdc++/4.4.3/libs/armeabi/libgnustl_shared.so $LIBS_PATH/
export CC=$OLD_BOUBOU
2 - libstl 関数を含む共有ライブラリを見つけてロードします。これは難しい部分でした:
調査の結果、stl 関数は listdc++.so ではなく libgnustl_shared.so に格納されていることがわかりました。したがって、このライブラリを apk に埋め込む必要があります。
これがラインの目的ですtry cp $ANDROIDNDK/sources/cxx-stl/gnu-libstdc++/4.4.3/libs/armeabi/libgnustl_shared.so $LIBS_PATH/
次に、それをロードする必要があります。私は変更しました:
src/src/org/renpy/android/PythonActivity.java
src/src/org/renpy/android/PythonService.java
by adding this line after the others System.loadLibrary() :
System.loadLibrary("gnustl_shared");