operativo - ¿Cómo obtener libcap(biblioteca de capacidades de Linux) para Android?
nucleo linux (4)
¿La biblioteca de capacidades de Linux (libcap.so) está disponible para su uso con Android? Si no, ¿cómo puedo compilarlo?
Me gustaría usar la API relacionada con las capacidades en sys/capabilities.h
, que se incluye con el NDK. Pero cuando trato de llamar a funciones como cap_get_proc()
, cap_get_proc()
un error de "referencia indefinida".
Aquí alguien lo compiló y describió:
http://blog.umitproject.org/2011/05/libpcap-for-android.html
Aquí está el enlace - https://github.com/scopichmu/libcap-for-Android . Este es libcap original (se clonó de https://kernel.googlesource.com/pub/scm/linux/kernel/git/morgan/libcap ) con el apoyo de la compilación de Android ndk. Puede compilar ahora libcap.so, setcap y getcap para Android.
Me imagino que usar esta API iría mucho más allá del contrato en el marco de Android. Puede funcionar en algunos dispositivos, pero no en otros.
De hecho, no hay garantía, afaik, de que Android incluso se ejecute en Linux. Por ejemplo, los nuevos dispositivos Blackberry ejecutan el sistema operativo propietario de Blackberry, pero siguen ejecutando aplicaciones de Android.
Finalmente, la versión de Linux que se ejecuta en la mayoría de los dispositivos Android es una versión altamente reducida. No incluían ninguna característica que la API de Android no necesita. Si Android no necesita libcap, entonces probablemente no esté incluido.
Quizás puedas decirnos exactamente qué es lo que estás tratando de hacer.
Mucha discusión sobre este tema ... busca en Google un poco:
http://permalink.gmane.org/gmane.comp.handhelds.android.ndk/4075