在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
答案 0 :(得分:38)
因此发生错误:
ld: -rpath can only be used when targeting Mac OS X 10.5 or later
尝试像这样指定OSX部署目标:
export MACOSX_DEPLOYMENT_TARGET=10.5