我可以在Android上安装Ruby和Ruby on Rails吗?


8

意识到这有点麻烦,但是我可以在运行Jelly Bean 4.2的Galaxy S4上安装Ruby吗?我可以在其中安装gem,耙路线和运行Rails服务器以及通过将0.0.0.0.3000放入Chrome浏览器浏览到我的应用程序的控制台吗?

非常适合测试我在旅途中遇到的点子和概念!

知道Android不是UNIX,但是天哪,如果他们可以在Windows上安装它,那么他们可以在任何地方安装它!


您在下面有一些不错的答案,为什么没有对它们进行投票?
Siddharth

Answers:


3

据说 Android脚本环境计划在Ruby上进行计划。可能值得检查一下他们走了多远。至少在Google Code中将其标记为“ JRuby”。根据他们的项目页面

脚本可以在终端中,在后台或通过区域设置以交互方式运行。目前支持Python,Perl,JRuby,Lua,BeanShell,JavaScript,Tcl和Shell,并且我们计划添加更多内容。

但也要注意:

SL4A是为开发人员设计的,是alpha质量软件。

您可能要阅读的与此主题有关的有趣文章是在假期中入侵Android。它描述了(成功的)尝试设置和使用SL4A与Ruby一起使用的尝试。


6

这可以做到

  1. 为Android编译Ruby和Node.js
  2. 在设备上安装并使用c / c ++ ide进行配置(您可以使用C4droid,CCTools,Terminal IDE ...在с/с++上安装扩展模块)
  3. 安装导轨($ gem安装导轨)

示例:(点击图片放大)
屏幕截图1 屏幕截图2 屏幕截图2


3

至于红宝石,您可以尝试Termux

附带电池。您能想象比读书线驱动的python控制台更强大,更优雅的袖珍计算器吗?最新版本的perl,python,ruby和node.js均可用。


0

从理论上讲,是的,您可以这样做,但是会有一些明显的限制。几乎可以肯定,您需要一台扎根的 Android设备。

例如,您将无法公正地gem install anything工作。问题是,手机的资源太有限,无法运行编译器,因此您无法编译Ruby或任何需要本机库的gem。

因此,我要做的第一种方法是将ruby和RubyGems与Android NDK交叉编译,然后将它们侧面加载到设备上。此时,你已经有了rubygem,可以开始试验。


0

实际上,我修改了CyanogenMod以创建空的“ / bin,/ lib,/ usr,/ var,/ svr,/ home,/ media等”,然后修改了“ $ {source_root} / system / core / include / private /android_filesystem_config.h”以包含目录规则,然后修改我的外部sdcard,使其不会作为保险丝安装或设置粘性位(它将root:sdcard_rw所有权设置为内部的所有文件),并在启动后运行一个脚本,该脚本将外部sdcard上的Linux arm根目录安装到Android根目录中的空版本。glibc的嵌入式版本与我创建的Kali Linux armhf chroot映像一起使用,但是它没有ruby或metasploit。因此,我遵循了一些有关使用svn或其他工具编译ruby 1.9.3的指示,然后使用该指示来安装metasploit,唯一的是postgresql并没有这样做。由于套接字和文件的创建对权限非常敏感,并且套接字可能涉及套接字,因此尚无postgres数据库,但尚未尝试连接到另一台主机上的db。Apache2正常运行,我整个启动了/etc/init.d/apache2,中提琴“成功了!” 你知道,如果你看过。

简而言之,是的,您可以在Android上编译ruby和更多程序,只需提供glibc,即/ lib目录和Linux上的内容。

另外,我使用了具有2GB RAM的Galaxy S III Sprint。Python很棒,我刚开始使用python尝试Unix套接字,它们以/ sdcard连接,但是我需要进一步了解Android关于套接字和数据库创建的安全策略,然后才能进一步获取metasploit和在Android上工作的数据库+ glibc。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.