部署 centos 上安装问题,启动不了 WEBRick

匿名 · 2011年11月22日 · 最后由 jeremy16601 回复于 2013年06月24日 · 6979 次阅读

Could not find gem 'turn (= 0.8.2) ruby' in any of the gem sources listed in your Gemfile.

这个 turn 0.8.2 怎么弄出来。

我的 GEMS。turn 0.8.3,我晕了。

*** LOCAL GEMS ***

actionmailer (3.1.3)
actionpack (3.1.3)
activemodel (3.1.3)
activerecord (3.1.3)
activeresource (3.1.3)
activesupport (3.1.3)
ansi (1.4.1)
arel (2.2.1)
builder (3.0.0)
bundler (1.0.21)
coffee-rails (3.1.1)
coffee-script (2.2.0)
coffee-script-source (1.1.3)
erubis (2.7.0)
execjs (1.2.9)
hike (1.2.1)
i18n (0.6.0)
jquery-rails (1.0.18)
json (1.6.1)
mail (2.3.0)
mime-types (1.17.2)
minitest (1.6.0)
multi_json (1.0.3)
polyglot (0.3.3)
rack (1.3.5)
rack-cache (1.1)
rack-mount (0.8.3)
rack-ssl (1.3.2)
rack-test (0.6.1)
rails (3.1.3)
railties (3.1.3)
rake (0.9.2.2, 0.8.7)
rdoc (3.11, 2.5.8)
sass (3.1.10)
sass-rails (3.1.5)
sprockets (2.0.3)
sqlite3 (1.3.4)
sqlite3-ruby (1.3.3)
thor (0.14.6)
tilt (1.3.3)
treetop (1.4.10)
turn (0.8.3)
tzinfo (0.3.31)
匿名 #1 2011年11月22日

自己解决了 bundle install

结果 rails s

/usr/bin/ruby: symbol lookup error: /usr/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.4/lib/sqlite3/sqlite3_native.so: undefined symbol: sqlite3_initialize

变成这样。伤不起。安装的应该是 sqlite3.7.3,结果我在命令行下输入 sqlite3,进去发现还是 3.3.6

第一个问题。这个 turn 0.8.2 怎么弄出来?你得发 Gemfile 来看看,gem list 看不出什么的 第二个问题你的更具体描述

匿名 #3 2011年11月22日

第一个问题搞好了。服务器是否换成 ubuntu 会更好一些。

[root@www blog]# rails -v
Rails 3.1.3

[root@www blog]# ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]

[root@www blog]# gem -v
1.3.7

[root@www blog]# sqlite3 -version
3.3.6

[root@www blog]# rails s
/usr/bin/ruby: symbol lookup error: /usr/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.4/lib/sqlite3/sqlite3_native.so: undefined symbol: sqlite3_initialize

这和用那个 Linux 发行版没有关系!

说实话,你这样的问题问谁都不好解决,无法知道你的环境细节情况,但是拿到手里就能很快处理好。

我建议你这样试试:

  1. 确定是否正确安装 sqlite 和 sqlite-devel
  2. 改用 RVM 安装 Ruby(这样会少了很多权限带来的问题)
匿名 #5 2011年11月22日

我想知道 gemfile 是那个文件。

#5 楼 @KennX 就是程序目录下 Gemfile 那个文件,rails new 会自动生成的 或者就把 turn 删掉吧

匿名 #7 2011年11月22日

#6 楼 @cqpx 太谢谢了。。响应好快呀。

匿名 #8 2011年11月22日
gem 'rails', '3.1.3'

# Bundle edge Rails instead:
# gem 'rails',     :git => 'git://github.com/rails/rails.git'

gem 'sqlite3'


# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.1.5'
  gem 'coffee-rails', '~> 3.1.1'
  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# Use unicorn as the web server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'ruby-debug19', :require => 'ruby-debug'

group :test do
  # Pretty printed test output
  gem 'turn', '0.8.2', :require => false
end

把最后那个改成 gem 'turn', '~> 0.8.3', :require => false 再 bundle install

匿名 #10 2011年11月22日

@cqpx

sqlite3 的问题。 centos 5 上默认是 sqlite3 3.3.6 然后我自己安装一个 sqlite3 3.6.3

/usr/bin/ruby: symbol lookup error: /usr/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.4/lib/sqlite3/sqlite3_native.so: undefined symbol: sqlite3_initialize

头文件版本不正确吧

匿名 #12 2011年11月22日

搞定了。确实是 sqlite3 的问题。我完全不知道怎么办的情况下,果断把系统换成 ubuntu。

我的 VPS 是 PhotonVPS,一直闲置没用。centOS 下,好多东西比较缺。 而且 PhotonVPS 的 centOS 自带一个 sqlite3,估计有依赖,所以我也不好进行。

换成 ubuntu10.04,里面啥也没有。没有 ruby,没有 sqlite3。

http://www.yangzhiping.com/tech/ubuntu-ree-nginx-passenger-rails3.blog.html 看了@ouyang 的这个 blog 受益非浅。

http://173.224.208.190:3000/ 目前是个开发环境,不过我很满足了。就要开始学习了。

/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/resolver.rb:296:in `resolve': Could not find gem 'sass-rails (~> 3.2.3) ruby' in the gems available on this machine. (Bundler::GemNotFound) 谁知道这个错误啊

需要 登录 后方可回复, 如果你还没有账号请 注册新账号