Bisakah Anda menjalankan aplikasi baris perintah Linux di Android?

14

Saya baru mengenal Android; sebenarnya saya belum pernah memilikinya.

Tapi saya bepergian sepanjang musim panas ini, dan saya sangat tertarik melakukan beberapa pemrograman selagi saya dalam pelarian.

PERTANYAAN: Apakah mungkin menjalankan lingkungan pengembangan Ruby penuh dengan Emacs di Android? Bagaimana?

Dan apakah "rooting" memberi Anda sesuatu yang dekat dengan sistem Linux nyata?

kaca
sumber
Sebagai pengguna baru juga, Jackpal terlihat seperti mencentang kotak sebagai pengerjaan ulang dari Android Terminal Emulator.
Laurie Stearn

Jawaban:

10

"Rooting" memungkinkan Anda mengakses lingkungan Android internal, yang tentu saja lebih dari sekadar kernel Linux. Jadi Anda menjalankan Linux, tetapi Anda harus menganggapnya seolah-olah Anda menjalankan distribusi yang berbeda dari yang dikatakan Debian atau Redhat.

Ada satu set pustaka standar yang berbeda dan beberapa file berada di lokasi yang berbeda. Setidaknya pada ext2dukungan Droid saya tidak built-in secara default. Juga tidak ada initatau cron. Set lengkap modul Linux tidak tersedia kecuali Anda mengkompilasinya sendiri dan memasukkannya /system/lib/modules. Yang penting Anda mungkin kehilangan pada ROM standar yang cifs, ext2, tun, dan lain-lain.

Sebagian besar, jika tidak semua, ponsel yang menjalankan Android adalah CPU ARM. Jadi binari yang Anda jalankan harus binari ARM "EABI" "soft-float". Jika Anda memiliki sumbernya, Anda bisa mengkompilasi silang utilitas apa pun yang Anda butuhkan, tetapi baca terus.

Ada banyak perintah standar dan utilitas yang tersedia di /system/bindirektori seperti grep, ps, cp, rm, mv, ls, ip, bahkan vi. Anda memiliki cukup untuk bertahan sampai ...

... gunakan utilitas "Pemasang Linux" untuk menginstal chrootlingkungan Debian. Debian telah mendukung ARM untuk sementara waktu. Butuh beberapa pekerjaan, tetapi jika Anda dapat me-root ponsel Anda, dan memiliki kartu SD yang cukup besar, ini adalah cara untuk pergi.

Ini dekat dengan sistem Linux standar dan di bawahnya Anda dapat menginstal dan menjalankan Ruby. Tentu saja keterbatasan CPU dan RAM ikut berperan.

LawrenceC
sumber
5

Ruby belum porting ke Android, meskipun Anda mungkin ingin memeriksa Ruboto . Untuk mengedit sederhana ada beberapa opsi, tetapi saya tidak percaya emacs telah di-porting juga, tidak ada hasil Market.

Rooting mungkin memberi Anda kemampuan untuk menjalankan Linux di ponsel Anda, tetapi Android bukan Linux. Kernel-nya sebagian besar didasarkan pada kernel Linux tapi itu saja. Anda tidak dapat menjalankan aplikasi Linux dengan GUI di Android, itu harus ditulis ulang. Saya tidak yakin sampai sejauh mana aplikasi baris perintah asli perlu ditulis ulang, meskipun tentu saja mereka perlu dikompilasi ulang.

Android juga tidak memiliki VM Java penuh.

Matius Baca
sumber
4

Anda dapat menginstal distro debian yang berfungsi pada telepon Anda tanpa mengganggu distribusi pada telepon. Dengan cara ini Anda akan memiliki tanah pengguna penuh dengan barang-barang yang biasa Anda gunakan pada kotak Linux lainnya. Anda harus ssh ke telepon Anda untuk menggunakan ini dengan nyaman.

Pasang ini: https://play.google.com/store/apps/details?id=org.dyndns.sven_ola.debian_kit

awesomo4000
sumber
3

Saat ini, port Emacs untuk Android sudah ada:

  • android-emacs-toolkit dirilis 23 Juni 2012:

    Android-emacs-toolkit membantu membangun lingkungan pengembangan android di emacs. Ini berisi mode utama emacs yang membantu mengembangkan program android SDK dan ndk.

  • GNU Emacs porting ke Android tersedia dari Google Play Store, terakhir diperbarui 23 Agustus 2012:

    GNU Emacs porting ke Android!

    Berjalan pada versi Terminal Emulator yang dimodifikasi - membutuhkan keyboard perangkat keras dan layar yang agak besar.

    Termasuk Busybox dan eshell. SSH (untuk TRAMP) dan git sudah direncanakan.


Selain itu, Anda mungkin menemukan informasi berguna yang disediakan oleh EmacsWiki - EmacsOnAndroid , yang pada dasarnya adalah panduan tentang cara menginstal Emacs ke perangkat Android.

Zuul
sumber
0

Coba metode ini. Pada dasarnya setiap c, C ++ yang dikompilasi untuk ARM akan berfungsi http://geeknizer.com/install-run-linux-applications-on-android/

Rahul
sumber
4
Bisakah Anda memasukkan langkah-langkah atau paling tidak merangkumnya di sini? Jawaban hanya tautan cenderung cenderung membusuk pada akhirnya dan tidak dianggap gaya yang baik di sini.
ce4