• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ubuntu中Ruby开发集成环境

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

因项目需要,主要是考虑到我们项目的高可变性,以及由此产生的高适应性,所以选择用ruby。跟Java相比,ruby的确比较灵活,能写出千变万化的代码。

但是,比较可悲的是,在windows7上面搭建ruby环境问题比较多。无论是基于cgywin,还是直接使用netbeans都不尽如人意。

因为想调整webserver使用nginx+thin,而不是webrick,所以,要考虑thin的适应性。没想到,使用当前的ruby1.9.3 p134还有问题。在项目路径下,每次运行thin start,到最后总是提示intercepter error,但是用webrick就是好的。可能thin跟1.9.3的还没有很好的结合。

所以,切换到linux下试试环境。

经过见缝插针的努力,终于看到点希望,搭建好了thin server。

先总结一下,以备后用。我的os是ubuntu12

1.安装rvm:

这个比较简单,直接通过官网(https://rvm.io/rvm/basics/),照上面的说明做就可以:

 curl -L get.rvm.io | bash -s stable(如果提示没有curl,就先sudo apt-get install curl)

安装完成rvm,会有个提示,里面有说需要 source /home/eric/.rvm/scripts/rvm (这里可能根据不同的安装路径,有所不同),需要仔细看看那个安装完成的提示。如果不做这一步,运行rvm时,会有rvm不是一个函数的错误提示。

2.安装rvm的支持包:

如果不安装这些包,在运行gem的时候,会出现少包的情况,那难免又要重新安装和编译,所以把这一步提前。

对照rvm的官网关于package的部分(https://rvm.io/packages/),主要有zlib和openssl,zlib是gem会用到的,openssl是rails中会用到的。所以,先通过官网的命令安装:

rvm pkg install zlib

rvm pkg install openssl

3.安装ruby

不多说了,直接上:

rvm install 1.9.2

rvm install 1.9.3

上面两个命令都会获取两个版本的最新build。

4.设置默认ruby和gemset:(以下都会用到1.9.2,这个版本时间比较长,一些组件比较稳定)

rvm --default use 1.9.2

rvm有一套gem的管理机制,就是gemset,具体理论不多说,各位看官网吧。有些东西会在命令之间做个简单说明。个人理解,因为gem都是放在ruby编译器对应的gem路径下的,就像是java的classpath。所以,应该先确定ruby版本,然后创建gemset,这个gemset是跟ruby对应的。如何查看gemset里面有哪些包,也很简单只要指定了某个gemset,然后运行gem list就可以查看这个gemset里面的gem列表。

现在开始管理gemset:

创建gemset:rvm gemset create gemset_name

然后选择启用哪个gemset:rvm gemset use gemset_name(如果你忘了那个gemset,可以rvm gemset list查看)

启用了对应的gemset之后,可以通过rvm gemdir查看正在使用的gemset路径,当然,也可以通过rvm gemset list查看,在列表里会有箭头指向正在使用的gemset。

现在就可以安装各种gem了:gem install rails

5.rails安装完成之后,创建项目:

rails new mytestproj

创建完成之后,我要使用thin和mysql,于是:

cd mytestproj

vi Gemfile

注释掉sqlite,增加

gem 'mysql2'

gem 'thin'

保存退出,运行:

bundle install(我在运行时出现mysql没有安装的提示,于是又安装了mysql server和apt-get install mysql-client-core-5.5,再运行这个命令)

运行正常。

6.测试启动:

rails server thin

ok

又出问题了,提示execjs没有js运行时错误,于是sudo apt-get install nodejs

再运行,这次真ok了。

以上是个人安装过程的流水,笔记一页,以供参考。

 

问题收集:

1.刚启动rails项目时出现了如下的问题:

rails server thin
/home/eric/.rvm/gems/ruby-1.9.2-p320@athena-proj/gems/mysql2-0.3.11/lib/mysql2.rb:9:in `require': libmysqlclient.so.18: cannot open shared object file: No such file or directory - /home/eric/.rvm/gems/ruby-1.9.2-p320@athena-proj/gems/mysql2-0.3.11/lib/mysql2/mysql2.so (LoadError)
解决方法:

ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18

如果还是找不到,可能是因为你的服务器是64位的缘故,再做如下处理:

ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
BestofRubyQuiz-AnimalQuiz发布时间:2022-07-14
下一篇:
Ruby:Mechanize的使用教程发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap