Linux 機能 (libcap.so) ライブラリは Android で使用できますか? そうでない場合、どうすればコンパイルできますか?
sys/capabilities.h
NDK に含まれているの機能関連 API を使用したいと考えています。しかし、のような関数を呼び出そうとするとcap_get_proc()
、「未定義の参照」エラーが発生します。
Linux 機能 (libcap.so) ライブラリは Android で使用できますか? そうでない場合、どうすればコンパイルできますか?
sys/capabilities.h
NDK に含まれているの機能関連 API を使用したいと考えています。しかし、のような関数を呼び出そうとするとcap_get_proc()
、「未定義の参照」エラーが発生します。
このトピックに関する多くの議論があります...少しグーグルで検索してください:
http://permalink.gmane.org/gmane.comp.handhelds.android.ndk/4075
この API を使用すると、Android フレームワークのコントラクトをはるかに超えることができると思います。一部のデバイスでは機能する場合がありますが、他のデバイスでは機能しない場合があります。
実際、Android が Linux でさえ動作するという保証はありません。たとえば、新しい Blackberry デバイスは Blackberry 独自の OS を実行しますが、Android アプリも実行します。
最後に、ほとんどの Android デバイスで実行されている Linux のバージョンは、機能を大幅に削減したバージョンです。Android API が必要としない機能は含まれていません。Android に libcap が必要ない場合は、含まれていない可能性があります。
何をしようとしているのか、正確に教えていただけないでしょうか。
ここにリンクがあります - https://github.com/scopichmu/libcap-for-Android。これは、Android ndk ビルドをサポートするオリジナルの libcap ( https://kernel.googlesource.com/pub/scm/linux/kernel/git/morgan/libcapから複製されたもの) です。Android 用の libcap.so、setcap、getcap をビルドできるようになりました。
ここで誰かがそれをコンパイルして説明しました:
http://blog.umitproject.org/2011/05/libpcap-for-android.html