2013-07-20 39 views
6

Tôi đã thửkhông thể cài đặt mysql2 trên Mac OS 10.9

bundle install 

gem install mysql2 

rvm gem install mysql2 

tất cả đều có kết quả tương tự dưới đây.

rMBP:scripts admin$ rvm gem install mysql2 
Please note that `rvm gem ...` was removed, try `gem install mysql2` or `rvm all do gem install mysql2` instead. (see: 'rvm usage') 
rMBP:scripts admin$ rvm all do gem install mysql2 
Building native extensions. This could take a while... 
ERROR: Error installing mysql2: 
    ERROR: Failed to build gem native extension. 

    /Users/admin/.rvm/rubies/ruby-2.0.0-p247/bin/ruby extconf.rb 
checking for rb_thread_blocking_region()... yes 
checking for rb_wait_for_single_fd()... yes 
checking for rb_hash_dup()... yes 
checking for rb_intern3()... yes 
checking for mysql_query() in -lmysqlclient... no 
checking for main() in -lm... yes 
checking for mysql_query() in -lmysqlclient... no 
checking for main() in -lz... yes 
checking for mysql_query() in -lmysqlclient... no 
checking for main() in -lsocket... no 
checking for mysql_query() in -lmysqlclient... no 
checking for main() in -lnsl... no 
checking for mysql_query() in -lmysqlclient... no 
checking for main() in -lmygcc... no 
checking for mysql_query() in -lmysqlclient... no 
*** extconf.rb failed *** 
Could not create Makefile due to some reason, probably lack of necessary 
libraries and/or headers. Check the mkmf.log file for more details. You may 
need configuration options. 

Provided configuration options: 
    --with-opt-dir 
    --with-opt-include 
    --without-opt-include=${opt-dir}/include 
    --with-opt-lib 
    --without-opt-lib=${opt-dir}/lib 
    --with-make-prog 
    --without-make-prog 
    --srcdir=. 
    --curdir 
    --ruby=/Users/admin/.rvm/rubies/ruby-2.0.0-p247/bin/ruby 
    --with-mysql-config 
    --without-mysql-config 
    --with-mysql-dir 
    --without-mysql-dir 
    --with-mysql-include 
    --without-mysql-include=${mysql-dir}/include 
    --with-mysql-lib 
    --without-mysql-lib=${mysql-dir}/ 
    --with-mysqlclientlib 
    --without-mysqlclientlib 
    --with-mlib 
    --without-mlib 
    --with-mysqlclientlib 
    --without-mysqlclientlib 
    --with-zlib 
    --without-zlib 
    --with-mysqlclientlib 
    --without-mysqlclientlib 
    --with-socketlib 
    --without-socketlib 
    --with-mysqlclientlib 
    --without-mysqlclientlib 
    --with-nsllib 
    --without-nsllib 
    --with-mysqlclientlib 
    --without-mysqlclientlib 
    --with-mygcclib 
    --without-mygcclib 
    --with-mysqlclientlib 
    --without-mysqlclientlib 


Gem files will remain installed in /Users/admin/.rvm/gems/ruby-2.0.0-p247/gems/mysql2-0.3.13 for inspection. 
Results logged to /Users/admin/.rvm/gems/ruby-2.0.0-p247/gems/mysql2-0.3.13/ext/mysql2/gem_make.out 
rMBP:scripts admin$ 

Tôi có Xcode 5 DP3 và Maverick 10.9 beta mới nhất (13A510d)

Xcode 5 có các công cụ dòng lệnh được tích hợp vào các ứng dụng (bên trong gói ứng dụng)

+0

Bạn đã cài đặt MySQL và các thư viện của nó chưa? Đá quý chỉ cung cấp giao diện Ruby cho các thư viện C. –

+0

Tôi không có nó –

+0

Cài đặt tất cả các công cụ MySQL ([Brew] (http://mxcl.github.io/homebrew/) sẽ hữu ích ở đây) và sau đó bạn có thể cài đặt đá quý. –

Trả lời

24

Trước tiên, bạn cần phải cài đặt MySql, và tôi sử dụng homebrew

brew install mysql 

nếu bạn sử dụng 10,9 DP-3, bạn có thể fail.But tôi ăn gian bằng cách thay đổi productVersion đến 10,8 trong SystemVersion.plist nằm trong/System/Library/CoreServices, và sau đó bạn có thể cài đặt mysql.

Tiếp tục để cài đặt mysql2

gem install mysql2 

Sau khi bạn đã cài đặt tất cả các công cụ, bạn phải thay đổi productVersion trở lại 10,9.

5

bạn cần phải nói viên ngọc khi mysql có thể được tìm thấy, cách tốt nhất là sử dụng mysql_config:

gem install mysql -- --with-mysql-config=/path/to/mysql/bin/mysql_config 

đường dẫn sẽ phụ thuộc vào nơi mà bạn đã cài đặt mysql.

+0

cùng một điều đã xảy ra. gem install mysql - --with-mysql-config =/path/tới/mysql/bin/mysql_config Tìm nạp: mysql-2.9.1.gem (100%) Xây dựng các phần mở rộng tự nhiên với: '--with-mysql- config =/path/to/mysql/bin/mysql_config ' Quá trình này có thể mất một khoảng thời gian ... L ERI: Lỗi khi cài đặt mysql: \t L ERI: Không thể xây dựng phần mở rộng gốc đá quý. –

+0

Tôi không cài đặt mysql –

+0

để hoạt động này hoạt động bạn cần ít nhất libmysql-client, phần máy chủ không bắt buộc - nhưng nếu bạn muốn chạy ứng dụng trên cơ sở dữ liệu mysql - thì tôi khuyên bạn nên cài đặt và cấu hình máy chủ mysql, sử dụng đường dẫn thích hợp để cài đặt mysql. – mpapis

Các vấn đề liên quan