【发布时间】:2012-05-18 08:56:09
【问题描述】:
我需要安装 mysql2 gem,但它在链接“错误:无法构建 gem 原生扩展”时中断。它确实错误地使用了-lmysqlclient_r,而它应该使用-lmysqlclient。
那么我该怎么做:
$ cd /usr/local/rvm/gems/ruby-1.9.3-p194/gems/mysql2-0.3.11/ext/mysql2
$ vi Makefile # change -lmysqlclient_r to -lmysqlclient
$ make
linking shared-object mysql2/mysql2.so
$ cd ../../
我现在应该怎么做才能从这里继续安装?
更新: 我认为运行 make install “工作”。但是我的 ruby 安装非常糟糕,所以我决定从头开始,这次是用户空间安装。进入mysql2安装后:
$ make install
/usr/bin/install -c -m 0755 mysql2.so /data/web/rails/.rvm/gems/ruby-1.9.3-p194/gems/mysql2-0.3.11/lib/mysql2
$ rails server -d
/data/web/rails/.rvm/gems/ruby-1.9.3-p194@global/gems/bundler-1.1.3/lib/bundler/resolver.rb:287:in `resolve': Could not find gem 'mysql2 (>= 0) ruby' in the gems available on this machine. (Bundler::GemNotFound)
...
【问题讨论】:
-
这是因为在第一次通过 make install 安装 gem 所需的库之后,您运行了服务器,首先安装了所需的 gem :)
标签: ruby installation gem