Foro de elhacker.net

Sistemas Operativos => GNU/Linux => Mensaje iniciado por: lordluisiv en 3 Enero 2020, 18:49 pm



Título: Duda android y linux.
Publicado por: lordluisiv en 3 Enero 2020, 18:49 pm
Buenas a todos espero que estén bien, la duda que tengo es que si android en el fondo tiene la base de linux osea su kernel(con muchas modificaciones por cierto).
¿es posible ejecutar un binario compilado con linux en android?.

Osea que si compiló algo en Ubuntu(ejemplo), ¿lo podre correr en android?.
Esa es mi duda y me baso en la teoría que si está hecho con linux debe funcionar jeje.



Título: Re: Duda android y linux.
Publicado por: engel lex en 3 Enero 2020, 18:57 pm
hay posibilidad, pero no es simple, primero necesitas el telefono rooteado, segundo el ejecutable debe estar compilado para la arquitectura correcta (en pc se compilará para x86 o x64, necesitas compilar para ARM y no cualquier ARM sino el especifico del telefono)

tal vez necesites compilar el archivo con un moton de modificaciones para que tenga las rutas y api correctos..


Título: Re: Duda android y linux.
Publicado por: lordluisiv en 3 Enero 2020, 19:30 pm
Ah... ok ya veo...
Pensé que solo podía compilar y ya jaja. Bueno tendré que morir con Java y los sdk  de android entonces? Siempre me a gustado más c++ pero no encuentro como


Título: Re: Duda android y linux.
Publicado por: engel lex en 3 Enero 2020, 20:04 pm
teoricamente puedes con el sdk

https://developer.android.com/studio/projects/add-native-code (https://developer.android.com/studio/projects/add-native-code)


Título: Re: Duda android y linux.
Publicado por: B€T€B€ en 3 Enero 2020, 21:29 pm


Como te ha dicho engel lex es más complejo de lo que pudiera parecer...


Título: Re: Duda android y linux.
Publicado por: @XSStringManolo en 4 Enero 2020, 16:53 pm
Ah... ok ya veo...
Pensé que solo podía compilar y ya jaja. Bueno tendré que morir con Java y los sdk  de android entonces? Siempre me a gustado más c++ pero no encuentro como
Si no te gusta Java tiene Kotlin, interfaces a javascript desde Java o el proyecto Scripting Languajes For Android (Python, Perl, Lua, javascript, Bash, JRuby...) entre otras alternativas como instalar un servidor en Android que corra PHP o Node.js
https://github.com/kuri65536/sl4a

También hay compiladores en Android que te permiten programar con C/C++ y correr directamente el código.

También hay otra alternativa que es la de usar los propios motores de los navegadores para correr javascript sin necesidad de interfaz a Java. Y solo escribir el código que utilize las funciones de Android con Java(amplie las barreras de los navegadores). El resto todo con javascript.


Título: Re: Duda android y linux.
Publicado por: Casidiablo en 8 Enero 2020, 08:18 am
Lo usual, si quieres escribir programas para android es hacerlo en Java (o Kotlin). Lo que estarías programando en ese caso sería una aplicación como tal. Y probablemente eso es lo que querías preguntar.

Ahora, para entrar en el tema de Linux como tal, sí se pueden compilar programas para correrlos directamente en Android (sin interfaz gráfica, o sea, solo por línea de comandos). Usualmente necesitas un toolchain con el que puedas compilar para la arquitectura arm (usualmente C, C++, pero seguro también se puede en rust y otros lenguajes), y luego asegurarte de enlazar estáticamente las dependencias de tu programa, y luego correrlosd desde la línea de comandos (bien sea desde un "adb shell" o usando Termux), pero en general es muy tedioso. Esto solo es recomendado si sabes lo que estás haciendo y no lo puedes hacer con una aplicación de Android.