Можете ли вы запускать приложения для командной строки Linux на Android?

14

Я новичок в Android; на самом деле я никогда не владел им.

Но я путешествую все это лето, и мне очень интересно заниматься программированием, пока я в бегах.

ВОПРОС: Можно ли запустить полную среду разработки Ruby с Emacs на Android? Как?

И дает ли вам «рутирование» что-то близкое к реальной системе Linux?

зеркало
источник
Будучи новым пользователем, Jackpal выглядит так, как будто помечает все как переработку эмулятора терминала Android.
Лори Стерн

Ответы:

10

«Rooting» предоставляет вам доступ к внутренней среде Android, которая, конечно, состоит не только из ядра Linux. Итак, вы работаете в Linux, но вам следует учитывать, что вы работаете в дистрибутиве, отличном от Debian или Redhat.

Существует другой набор стандартных библиотек, и некоторые файлы находятся в разных местах. По крайней мере, на моем Droid ext2поддержка не встроена по умолчанию. Там тоже нет initили cron. Полный набор модулей Linux недоступен, если вы сами не скомпилируете их и не вставите /system/lib/modules. Важные те , которые вы можете пропустить на стандартных дисках являются cifs, ext2, tunи другие.

Большинство, если не все, телефоны под управлением Android являются процессорами ARM. Таким образом, исполняемые на них двоичные файлы должны быть двоичными файлами ARM "EABI". Если у вас есть исходный код, вы можете кросс-компилировать любые нужные вам утилиты, но читайте дальше.

Есть много стандартных команд и утилит , доступных в /system/binкаталогах , таких как grep, ps, cp, rm, mv, ls, ip, даже vi. У тебя достаточно, чтобы пройти, пока ты ...

... используйте утилиту «Установщик Linux» для установки chrootсреды Debian. Debian некоторое время поддерживал ARM. Это требует некоторой работы, но если вы можете получить root права на свой телефон и иметь достаточно большую SD-карту, то этот путь подходит.

Это близко к стандартной системе Linux, и под ней вы можете установить и запустить Ruby. Конечно, ограничения CPU и RAM вступают в игру.

LawrenceC
источник
5

Ruby не был портирован на Android, хотя вы можете попробовать Ruboto . Для простого редактирования есть несколько опций, но я не верю, что emacs также был портирован, в любом случае результатов Market нет.

Root может дать вам возможность запускать Linux на вашем телефоне, но Android - это не Linux. Его ядро ​​в значительной степени основано на ядре Linux, но это все. Вы не можете запустить любое приложение Linux с графическим интерфейсом на Android, его необходимо переписать. Я не уверен, в какой степени родные приложения командной строки нужно будет переписать, хотя, конечно, их нужно будет перекомпилировать.

Android также не имеет полноценной Java VM.

Мэтью Рид
источник
4

Вы можете установить работающий дистрибутив Debian на свой телефон, не нарушая дистрибутив на телефоне. Таким образом, вы получите полноценную пользовательскую среду с вещами, к которым вы привыкли в любой другой Linux-системе. Вы должны SSH в свой телефон, чтобы использовать это удобно.

Установите это: https://play.google.com/store/apps/details?id=org.dyndns.sven_ola.debian_kit

awesomo4000
источник
3

На сегодняшний день порт Emacs для Android уже существует:

  • Android-emacs-toolkit выпущен 23 июня 2012 года:

    Android-emacs-toolkit помогает создавать среду разработки для Android на emacs. Он содержит основной режим emacs, который помогает разрабатывать программы Android SDK и ndk.

  • GNU Emacs, портированный на Android, доступен в Google Play Store, последнее обновление - 23 августа 2012 года:

    GNU Emacs портирован на Android!

    Работает на модифицированной версии Terminal Emulator - требует аппаратной клавиатуры и довольно большого дисплея.

    Включает Busybox и eshell. SSH (для TRAMP) и git запланированы.


Кроме того, вы можете найти полезную информацию, предоставляемую EmacsWiki - EmacsOnAndroid , которая по сути является руководством по установке Emacs на устройство Android.

Zuul
источник
0

Попробуйте этот метод. В основном любой c, C ++, скомпилированный для ARM, будет работать http://geeknizer.com/install-run-linux-applications-on-android/

Рахул
источник
4
Можете ли вы включить шаги или хотя бы суммировать это здесь? Ответы только на ссылки, как правило, в конечном итоге приводят к потере ссылок и не считаются хорошим стилем.
ce4