ERROR: Error installing mysql2:
ERROR: Failed to build gem native extension.
current directory: /Users/sakuto/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/mysql2-0.4.10/ext/mysql2
- /Users/sakuto/.rbenv/versions/2.3.3/bin/ruby -r
./siteconf20190212-14889-1xapc5p.rb extconf.rb checking for
rb_absint_size()... yes checking for rb_absint_singlebit_p()... yes
checking for ruby/thread.h... yes checking for
rb_thread_call_without_gvl() in ruby/thread.h... yes checking for
rb_thread_blocking_region()... no checking for
rb_wait_for_single_fd()... yes checking for rb_hash_dup()... yes
checking for rb_intern3()... yes checking for rb_big_cmp()... yes
----- Using mysql_config at /usr/local/bin/mysql_config
----- checking for mysql.h... yes checking for errmsg.h... yes checking for SSL_MODE_DISABLED in mysql.h... yes checking for
SSL_MODE_PREFERRED in mysql.h... yes checking for SSL_MODE_REQUIRED
in mysql.h... yes checking for SSL_MODE_VERIFY_CA in mysql.h... yes
checking for SSL_MODE_VERIFY_IDENTITY in mysql.h... yes checking for
MYSQL.net.vio in mysql.h... yes checking for MYSQL.net.pvio in
mysql.h... no checking for MYSQL_ENABLE_CLEARTEXT_PLUGIN in
mysql.h... yes
----- Don't know how to set rpath on your system, if MySQL libraries are not in path mysql2 may not load
-----
----- Setting libpath to /usr/local/Cellar/mysql/8.0.15/lib
----- creating Makefile
要查看此扩展为何无法编译,请检查 mkmf.log,可以在这里找到:
/Users/sakuto/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-18/2.3.0-static/mysql2-0.4.10/mkmf.log
当前目录:
/Users/sakuto/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/mysql2-0.4.10/ext/mysql2
make "DESTDIR=" clean
当前目录:
/Users/sakuto/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/mysql2-0.4.10/ext/mysql2
make "DESTDIR=" compiling infile.c compiling client.c compiling
mysql2_ext.c compiling statement.c compiling result.c linking
shared-object mysql2/mysql2.bundle ld: library not found for -lssl
clang: error: linker command failed with exit code 1 (use -v to see
invocation) make: *** [mysql2.bundle] Error 1
make failed, exit code 2
宝石文件将保留在其中
/Users/sakuto/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/mysql2-0.4.10
进行检查。结果记录到
/Users/sakuto/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-18/2.3.0-static/mysql2-0.4.10/gem_make.out
答案 0 :(得分:0)
尝试在ruby on rails项目中的Gemfile中添加gem,然后在命令行中运行bundle install。
例如:
gem 'mysql2', '~> 0.4.10'