2

Android プラットフォーム用のアプリケーションを開発しました。ARM プロセッサ用です。正常に動作しています。MIPS(32 ビット) プロセッサで実行されている Android で同じアプリケーションを試してみたいです。アプリケーションをクロスコンパイルしようとしましたが、生成できませんでした。共有ライブラリ.MIPSプロセッサ用にカスタマイズされたMIPS ndkおよびAndroidソースコードを使用しています.静的ライブラリの生成中にエラーは表示されませんが、共有ライブラリの生成中に次のエラーが発生します:

/home/user/android-ndk-r7m/toolchains/mips-linux-android-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/mips-linux-android/4.4.3/.. /../../../mips-linux-android/bin/ld: /home/user/workspace/testing/ccl_obj/libccl.a(teccl_call_initiate.o): `__gnu_local_gp' に対する再配置 R_MIPS_HI16 は使用できません共有オブジェクトを作成するとき。-fPIC で再コンパイル /home/user/workspace/testing/ccl_obj/libccl.a: シンボルを読み取れませんでした: 不正な値 collect2: ld が 1 の終了ステータスを返しました make: * [obj/local/mips-r2/libhello-jni.so ] エラー 1

解決策を提案してください。

ありがとう

4

2 に答える 2

0

エラーは何をすべきかを示唆しているようです。

ソース コードをコンパイルするときに、-fPIC コンパイラ フラグを追加します。

于 2012-03-12T09:26:48.480 に答える
-2

誰かがこの問題に直面した場合に備えて.run

make clean 
make

今日も同様の問題が発生し、クリーンを実行すると問題が解決しました。

于 2016-05-05T04:36:59.853 に答える