Android에서 Linux 명령 행 앱을 실행할 수 있습니까?


14

저는 Android를 처음 사용합니다. 사실 나는 한 번도 소유 한 적이 없다.

그러나 나는 올 여름 내내 여행하고 있으며, 달리는 동안 프로그래밍을하는 데 매우 관심이 있습니다.

질문 : Android에서 Emacs를 사용하여 전체 Ruby 개발 환경을 실행할 수 있습니까? 어떻게?

"루팅"은 실제 Linux 시스템에 가까운 것을 제공합니까?



새로운 사용자로서 Jackpal 은 Android 터미널 에뮬레이터의 재 작업으로 상자를 선택하는 것처럼 보입니다.
Laurie Stearn

답변:


10

"루팅 (Rooting)"을 사용하면 내부 안드로이드 환경에 액세스 할 수 있으며 물론 Linux 커널 이상으로 구성됩니다. 따라서 Linux를 실행하고 있지만 Debian 또는 Redhat과 다른 배포판에서 실행하는 것처럼 고려해야합니다.

다른 표준 라이브러리 세트가 있으며 일부 파일은 다른 위치에 있습니다. 적어도 내 Droid ext2지원에는 기본적으로 내장되어 있지 않습니다. init또는 없습니다 cron. 직접 컴파일하여 넣지 않으면 전체 Linux 모듈 세트를 사용할 수 없습니다 /system/lib/modules. 당신이 표준 ROM에 놓칠 수 있습니다 중요한 사람은 cifs, ext2, tun, 등이있다.

전부는 아니지만 Android를 실행하는 전화는 ARM CPU입니다. 따라서 실행하는 바이너리는 ARM "EABI" "soft-float"바이너리 여야합니다. 소스가 있으면 필요한 유틸리티를 크로스 컴파일 할 수 있지만 계속 읽으십시오.

에서 사용할 수 많은 표준 명령 및 유틸리티가 있습니다 /system/bin같은 디렉토리가 grep, ps, cp, rm, mv, ls, ip,도 vi. 당신은 당신이 때까지 지나갈만큼 충분합니다 ...

... "리눅스 설치 프로그램"유틸리티를 사용하여 chroot데비안 환경 을 설치하십시오 . 데비안은 한동안 ARM을 지원했습니다. 약간의 작업이 필요하지만 휴대 전화를 루팅하고 충분한 SD 카드를 보유 할 수 있다면이 방법입니다.

이것은 표준 Linux 시스템에 가깝고 그 아래에서 Ruby를 설치하고 실행할 수 있습니다. 물론 CPU 및 RAM 제한이 적용됩니다.


5

Ruby는 안드로이드로 포팅되지 않았지만 Ruboto 를 확인하고 싶을 수도 있습니다 . 간단한 편집을 위해서는 몇 가지 옵션이 있지만 emacs가 포팅되었다고는 생각하지 않습니다. 어쨌든 시장 결과는 없습니다.

루팅은 휴대 전화에서 Linux를 실행할 수있는 기능을 제공하지만 Android는 Linux가 아닙니다. 커널은 주로 리눅스 커널을 기반으로하지만 그게 전부입니다. Android에서 GUI를 사용하여 Linux 응용 프로그램을 실행할 수 없으므로 다시 작성해야합니다. 기본 명령 줄 앱을 다시 작성해야하는 정도는 확실하지 않지만 물론 다시 컴파일해야합니다.

Android에는 전체 Java VM이 없습니다.



3

현재 Android 용 Emacs 포트는 이미 존재합니다 :

  • android-emacs-toolkit 은 2012 년 6 월 23 일에 출시되었습니다.

    Android-emacs-toolkit은 emacs에서 Android 개발 환경을 빌드하는 데 도움이됩니다. 그것은 안드로이드 SDK 및 NDK 프로그램을 개발하는 데 도움이 emacs 주요 모드가 포함되어 있습니다.

  • 2012 년 8 월 23 일에 마지막으로 업데이트 된 Google Play 스토어에서 Android로 포팅 된 GNU Emacs :

    GNU Emacs가 Android로 포팅되었습니다!

    수정 된 버전의 터미널 에뮬레이터에서 실행됩니다. 하드웨어 키보드와 다소 큰 디스플레이가 필요합니다.

    Busybox 및 eshell을 포함합니다. SSH (TRAMP 용) 및 git이 계획되어 있습니다.


또한, EmacsWiki-EmacsOnAndroid 에서 제공하는 정보는 유용한 데 , 이는 본질적으로 Android 장치에 Emacs 설치에 대한 안내서입니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.