いくつかのアンドロイドアプリでJNIコードから呼び出されているライブラリ(.so)をビルドしました。 JNIコードはNDKを使用して構築されています。アンドロイドアプリのコンテキストで動作するc/C++コードをコンパイルするためにアンドロイドツールチェーン(またはNDK)を使用する必要があるのはなぜですか?
アンドロイドツールチェーンを使用してライブラリを構築すると、ライブラリはJNIコードから呼び出されたときにうまく機能します。
他のツールチェーン(none androidアプリケーションでは同じARMデバイスで使用)を使用してライブラリを構築すると、JNIコードから呼び出されるとライブラリがクラッシュします。
アンドロイドアプリのコンテキストで実行されているc/C++コードをコンパイルするためにアンドロイドツールチェーン(またはNDK)を使用する必要があるのはなぜですか?なぜ他のツールチェーンを使用しないのですか?
他のどのツールチェーンを使用していますか? – MuertoExcobito
他のツールチェーンは、ARMv7用のクロスツールを使用して構築され、デバイス上の非アンドロイドアプリに使用されます。 – sami
なぜこれをやりたいですか?これを行うには多くの作業が必要ですが、最終的にはNDKのサブセットを持つだけです。 –