论坛首页 编程语言技术论坛

除了Web开发,Ruby还能作点什么

浏览 22534 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-03-27  
一提到Ruby就Rails,你大概腻了吧? 没关系,看看除了Web开发,Ruby还能作点什么

===
如果你熟悉嵌入式开发,如果你用C/C++的话,估计离开不了交叉编译工具。虽然网上能下载到编译好的交叉编译工具,但是不一定能满足你的需求,经常不得不自己手动从源代码开始自己编译交叉工具。虽然这不是什么难题,但是就我自己而言,每每碰到这样的问题,都需要到网上google一番,参考一些别人写好的脚本,然后按自己的需要修改,然后再编译...由于步骤有好几步,一一修改配置参数....输错了参数还要重来...太烦人了!

===
一直很怕写shell脚本,简单的任务尚可,一旦碰到复杂些的,可就犯难了(看看著名的autoconf里面的configure你就知道一个复杂的shell脚本有多么恐怖!)。Ruby简洁灵活强大的语法,丰富的库功能,用来写教本简直太完美了~

===
于是便写了个制作arm-elf交叉工具的小脚本,练练手,如果恰巧有搞嵌入式的同好者需要,算你运气好了))

===
使用:

0. 解压缩附件文件。
1. 先安装rbuild:
    gem install rbuild
2. 配置:
    rake menuconfig
   (配置完按S保存,按Q退出)
3. 编译:
    rake all


《《《 不让我上传.tar.gz文件??? What a ... 算了,需要者可以直接到rbuild的gem安装目录下的example2目录中找到这个脚本 》》》

  • 描述: arm-elf cross build configuration screen shot
  • 大小: 42 KB
   发表时间:2008-03-28  
哟哟,ruby for 嵌入式开发 ,好注意。
0 请登录后投票
   发表时间:2008-03-28  
我用Ruby写游戏逻辑脚本,用rake构建程序
0 请登录后投票
   发表时间:2008-03-28  
顺便把那个配置文件贴出来,对照着那个screen shot,大家可以看看用Ruby构建DSL是多么方便

#
# arm-elf cross compiler toolchain configure script,
# by Ricky Zheng <ricky_gz_zheng@yahoo.co.nz>
#

title "Welcom to Ricky's arm-elf cross build configuration"

group "Configure options" do
  config :ENABLE_CPP => "Enable C++ language"
  config :ARM_THUMB_INTERWORK => "Enable ARM/Thumb Interwork" do
   default true
  end
  config :WITH_NEWLIB => "Using Newlib instead of CLib" do
    default true
  end
  config :ENABLE_MULTILIB => "Enable multilib" do
    default true
  end
  config :DISABLE_THREAD => "Disable Thread" do
    default true
  end
  choice "Float point" do
    default :SOFT_FLOAT
    config :SOFT_FLOAT => "Using software float point library"
    config :HARD_FLOAT => "Using hardware float point unit"
  end
end

group "Package version" do
  choice :GCC_VER => "GCC version:" do
    range "3.2.2", "3.3.6", "4.0.1", "4.2.0", "4.2.3"
    default "4.2.0"
  end

  choice :BINUTILS_VER => "Binutils version:" do
    range "2.7", "2.8", "2.9", "2.12", "2.13.2", "2.14", "2.15", "2.16.1", "2.17", "2.18"
    default "2.17"
  end

  choice :NEWLIB_VER => "Newlib version:" do
    depends :ENABLE_MULTILIB
    range "1.6", "1.6.1", "1.7.0", "1.7.1", "1.8.0", "1.8.1", "1.8.2", "1.9.0", "1.10.0", "1.11.0", "1.12.0", "1.13.0", "1.14.0", "1.15.0", "1.16.0"
    default "1.16.0"
  end
end

group "Miscellaneous" do
  choice :PREFIX => "install dir" do
    default "./arm-elf"
  end
  choice :DOWNLOAD_DIR => "download dir" do
    default "./dl"
  end
  config :CHECK_INTEGRITY => "check downloaded package integrity" do
    default true
  end
end

0 请登录后投票
   发表时间:2008-03-28  
问一问, ruby可以编译成二进制文件吗?谢谢……
0 请登录后投票
   发表时间:2008-03-28  
我觉得ruby的文字处理功能很强,适合做语言学习工具。

参看 : www.rakudoor.com
0 请登录后投票
   发表时间:2008-03-28  
不错不错,还可以这样用
要是什么时候嵌入式的应用开发可以用ruby就爽了
0 请登录后投票
   发表时间:2008-03-28  
应用开发为何不可?我现在做的项目就是用Ruby,跑在ARMLinux上。
这里还有一个成功的例子:
http://rubyemb.group.iteye.com/group/topic/4238
0 请登录后投票
   发表时间:2008-03-29  
wosmvp 写道
问一问, ruby可以编译成二进制文件吗?谢谢……


Ruby 1.9会产生bytecode,不过好像只是为了提高执行速度。如果不想opensource,据说可以用JRuby这个实现。
0 请登录后投票
   发表时间:2008-03-29  
我现在基本上都用ruby工作,如果一定要用java的类库,我就用jruby。
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics