我需要安装mysql2 gem,但它在链接时出现“ERROR:无法构建gem native扩展”。它确实使用了错误的-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)
...
答案 0 :(得分:4)
在make
之后,您应该make install
。
答案 1 :(得分:0)
答案在这里: http://guides.rubygems.org/command-reference/#gem_install
从“如果通过编辑gem文件纠正编译错误开始,您需要手动编写规范。”按照例子。