gem install mysql2 v'0.3.11'不能在Yosemite上工作

时间:2014-10-20 00:50:20

标签: ruby-on-rails ruby gem mysql2 osx-yosemite

在ruby版本1.9.3(rvm)上进行bundle install或直接gem安装mysql2版本0.3.11时,我收到以下错误。但是当我安装最新版本0.3.16时,它可以工作。我还包括我的gcc版本供参考。

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    /Users/ginocarlocortez/.rvm/rubies/ruby-1.9.3-p547/bin/ruby extconf.rb 
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for mysql.h... yes
checking for errmsg.h... yes
checking for mysqld_error.h... yes
creating Makefile

make  clean

make
compiling client.c
couldn't understand kern.osversion `14.0.0'
compiling mysql2_ext.c
couldn't understand kern.osversion `14.0.0'
compiling result.c
couldn't understand kern.osversion `14.0.0'
linking shared-object mysql2/mysql2.bundle
couldn't understand kern.osversion `14.0.0'
ld: -rpath can only be used when targeting Mac OS X 10.5 or later
collect2: ld returned 1 exit status
make: *** [mysql2.bundle] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/ginocarlocortez/.rvm/gems/ruby-1.9.3-p547@willh/gems/mysql2-0.3.11 for inspection.
Results logged to /Users/ginocarlocortez/.rvm/gems/ruby-1.9.3-p547@willh/extensions/x86_64-darwin-14/1.9.1/mysql2-0.3.11/gem_make.out
An error occurred while installing mysql2 (0.3.11), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.3.11'` succeeds before bundling.

gcc版

$ gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.0.0
Thread model: posix

1 个答案:

答案 0 :(得分:38)

因此发生错误:

ld: -rpath can only be used when targeting Mac OS X 10.5 or later

尝试像这样指定OSX部署目标:

export MACOSX_DEPLOYMENT_TARGET=10.5