web-dev-qa-db-ja.com

MySQLのインストール:エラー:gem native extensionの構築に失敗しました

途中でインストールがうまくいかないため、MySQLを最新バージョンにインストールしようとしています。コマンドgem install mysqlを実行すると、次のメッセージが表示されます。

ネイティブ拡張の構築。これにはしばらく時間がかかる可能性があります...エラー:mysqlのインストールエラー:エラー:gemネイティブ拡張のビルドに失敗しました。

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby extconf.rb extconf.rb:4:警告:安全でない世界の書き込み可能なディレクトリ/ usr/bin PATH、モード040777 extconf.rb:4:警告:PATHの安全でない世界書き込み可能ディレクトリ/ usr/bin、モード040777 extconf.rb:7:警告:PATHの安全でない世界書き込み可能ディレクトリ/ usr/bin、モード040777 mkmf.rbはRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/Ruby/ruby.h

Gemファイルは、検査のために/Library/Ruby/Gems/1.8/gems/mysql-2.8.1にインストールされたままになります。結果は/Library/Ruby/Gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.outに記録されます

特定のバージョンのインストールからRubyの再インストールの試行まで、さまざまなものを検索して試しました。

私が間違っている可能性のあるアイデアはありますか?

途中でインストールがうまくいかないため、MySQLを最新バージョンにインストールしようとしています。コマンドgem install mysqlを実行すると、次のメッセージが表示されます。

ネイティブ拡張の構築。これにはしばらく時間がかかる可能性があります...エラー:mysqlのインストールエラー:エラー:gemネイティブ拡張のビルドに失敗しました。

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby extconf.rb extconf.rb:4:警告:安全でない世界の書き込み可能なディレクトリ/ usr/bin PATH、モード040777 extconf.rb:4:警告:PATHの安全でない世界書き込み可能ディレクトリ/ usr/bin、モード040777 extconf.rb:7:警告:PATHの安全でない世界書き込み可能ディレクトリ/ usr/bin、モード040777 mkmf.rbはRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/Ruby/ruby.h

Gemファイルは、検査のために/Library/Ruby/Gems/1.8/gems/mysql-2.8.1にインストールされたままになります。結果は/Library/Ruby/Gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.outに記録されます

特定のバージョンのインストールからRubyの再インストールの試行まで、さまざまなものを検索して試しました。

私が間違っている可能性のあるアイデアはありますか?

[〜#〜] edit [〜#〜]:Snow Leopard DVDからXCodeをインストールしましたが、エラーは次のようにわずかに変わりました。

ネイティブ拡張の構築。これにはしばらく時間がかかる可能性があります...エラー:mysqlのインストールエラー:エラー:gemネイティブ拡張のビルドに失敗しました。

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby extconf.rb extconf.rb:4:警告:安全でない世界の書き込み可能なディレクトリ/ usr/bin PATH、モード040777 extconf.rb:4:警告:PATHの安全でない世界書き込み可能ディレクトリ/ usr/bin、モード040777 extconf.rb:7:警告:PATHの安全でない世界書き込み可能ディレクトリ/ usr/bin、モード040777 extconf.rb:17:警告:安全でない世界書き込み可能ディレクトリ/ usr PATHの/ bin、モード040777 -lmysqlclientのmysql_query()のチェック... -lmのmain()のチェックなし... -lmysqlclientのmysql_query()のチェック...-のmain()のチェックなし- lz ...はい-lmysqlclientでmysql_query()をチェックしています... -lsocketでmain()をチェックしていません--lmysqlclientでmysql_query()をチェックしていません--lnslでmain()をチェックしていません.. -lmysqlclientのmysql_query()のチェックなし... -lmygccのmain()のチェックなし... -lmysqlclientのmysql_query()のチェックなし... no* extconf .rb failed *何らかの理由でMakefileを作成できませんでした。おそらく必要なlibraが不足していますriesおよび/またはヘッダー。詳細については、mkmf.logファイルを確認してください。構成オプションが必要になる場合があります。

提供される構成オプション:--with-opt-dir --without-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 =/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/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}/lib --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ファイルは、検査のために/Library/Ruby/Gems/1.8/gems/mysql-2.8.1にインストールされたままになります。結果は/Library/Ruby/Gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.outに記録されます

コマンドラインで「which mysql」を実行しても何も返されません。つまり、認識されないということです。 MySQLシステム設定オプションもインストールしましたが、MySQLの実行を停止することはできません。今、私は何をすべきか完全に立ち往生しています!

EDIT EDIT

このガイドを使用してMySQLを完全に再インストールしました http://hivelogic.com/articles/installing-mysql-on-mac-os-x

残念ながら、これも機能しませんでしたが、私は同じエラーを受け取ります。コマンドラインでmysql -urootを実行することもできません。次のエラーが表示されます。

エラー2002(HY000):ソケット '/tmp/mysql.sock'を介してローカルMySQLサーバーに接続できません(2)

だから私はすべてを試したと思う。

**解決済み*

申し訳ありませんが、これが機能しない理由は、MySQLパスが原因でした。私はそれをここにブログに書いた: http://www.kieransenior.co.uk/2010/02/mysql-cant-connect-using-Ruby-on-Rails-mac-os-x-snow-ヒョウ/

73
Kezzer

OSXにmysql gemをインストールする

ターミナルで..最初に「locate mysql_config」を実行してから、次のコマンドのパスをそのファイルの場所に置き換えます。

$ Sudo gem install mysql -- —–with-mysql-config=/usr/local/mysql/bin/mysql_config
Building native extensions. This could take a while…
Successfully installed mysql-2.7
1 gem installed
61
Trevoke

Debian(またはUbuntu)システムでは、次を使用してlibmysqlclient-devパッケージをインストールするだけです。

Sudo apt-get install libmysqlclient-dev

その後:

gem install mysql

エラーなしでインストールされます。

159
cartoonist

まず最初に、サーバーとしてのMySQL、クライアントとしてのMySQL、およびMySQLへのRubyバインディングを区別する必要があります。

私はMacに慣れていませんが、* nix OSの場合は、パッケージマネージャーからMySQLをインストールする必要があります。 Rubyでインストールされたバインディングを取得するには

gem install mysql

Ruby(UbuntuではRuby-devパッケージです)の開発ヘッダーとMySQL-Clientの開発ヘッダー(現在libmysqlclient16-dev Ubuntuで)。 Macで異なる名前が付けられているかどうかはわかりませんが、これらをインストールした後、Rubyバインディングはエラーなしでインストールされるはずです。

17
Aurril

多くの人々が見つけました この投稿 役に立ちました。

また、私は最初にこれを入力する必要がありました:

yum install mysql-devel

その後:

gem install mysql 

一部の人々のために、あなたはタイプする必要があるかもしれません:

gem install mysql -- --with-mysql-config=/usr/local/mysql/mysql_config
9
Guy Saban

oSX Mountain Lion:brewがインストールされている場合、brew install mysqlそしてinstructionsに従って、マシン上でmysqlを使用してテストデータベースを作成します。すべての手順を実行する必要はありません。実行する必要はありませんでした。インストール後、rakeをバンドルできました。

5
downrightmike

解決するために

Gem :: Ext :: BuildError:エラー:mysql2のgemネイティブ拡張エラーのビルドに失敗しました

libmysql-Rubyで変更されたと思いますRuby-mysql

次のコマンドを試してください。

Sudo apt-get install Ruby-mysql

その後

Sudo apt-get install libmysqlclient-dev
3
rahul patil

また、そもそもMySQLを実際にinstallするのを忘れていました。このガイドに従うことは大いに役立ちました。

http://www.djangoapp.com/blog/2011/07/24/installation-of-mysql-server-on-mac-os-x-lion/

これらの行を私の.profileに追加するだけでなく:

export PATH="/usr/local/mysql/bin:$PATH"
alias mysql=/usr/local/mysql/bin/mysql
alias mysqladmin=/usr/local/mysql/bin/mysqladmin
2
Richard Burton

私は同様の経験を持っていたので、ここで私が試したものがあります

まず、端末で次のコマンドを実行してmysqlの必要なパッケージをインストールしようとしました

Sudo apt-get install build-essential libmysqlclient-dev

次に、端末で次のコマンドを実行して、システムのrubygemsを更新しようとしました

Sudo gem update --system

しかし、私はまだ同じ問題を経験していました。多くの調査の結果、mysql gemのほとんど古いバージョンを使用していることに気付きました。私は単にmysql2gem( mysql2 gem )を使用する必要があり、mysqlではありませんgemなので、以下のコマンドを端末で実行して修正しました

gem install mysql2

これは私にとってはうまくいきました。最後のコマンドを実行する前に、最初と2番目のコマンドを実行したことを確認して、システムですべてが正常であることを確認してください。

それで全部です。

これが役立つことを願っています

1
Promise Preston

Percona Mysqlサーバーを使用する場合

$ yum install Percona-Server-devel-55

$ gem install mysql

0
AlexeyKa

ここからソースからインストールしている場合は、チュートリアルです。役立つ場合は幸せです http://raihan90.blogspot.com/2009/03/mysql-step-by-step-hacking-into-mysql.html

0
Raihan Alam

重要:--with-mysql-config =/usr/local/mysql/bin/mysql_configよりも--keyを指定する必要があります

0
Vestel

Ubuntu OSはmysqlクライアント用のライブラリをインストールする必要がありますSudo apt-get install libmysqlclient-dev

その後、bundleまたはbundle install

0
Mayur Kambariya
yum -y install gcc mysql-devel Ruby-devel rubygems
gem install mysql2
0

xcode/devの最新バージョンを再インストールすることができます。 Snow Leopardのツール-これでエラーが修正されます

0
roman