首页 文章

MySQL安装:错误:无法构建gem原生扩展

提问于
浏览
69

我试图将MySQL安装到最新版本,因为某些安装在某个地方出错了 . 我运行命令 gem install mysql ,我收到以下内容:

构建原生扩展 . 这可能需要一段时间......错误:安装mysql时出错:错误:无法构建gem原生扩展 . /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb extconf.rb:4:警告:PATH中不安全的世界可写dir / usr / bin,模式040777 extconf.rb:4:警告:PATH中的不安全世界可写dir / usr / bin,模式040777 extconf.rb:7:警告:PATH中不安全的世界可写dir / usr / bin,模式040777 mkmf.rb在/ System无法找到ruby的头文件/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:警告:PATH中不安全的世界可写dir / usr / bin,模式040777 extconf.rb:4:警告:PATH中的不安全世界可写dir / usr / bin,模式040777 extconf.rb:7:警告:PATH中不安全的世界可写dir / usr / bin,模式040777 mkmf.rb在/ System无法找到ruby的头文件/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:警告:PATH中不安全的世界可写dir / usr / bin,模式040777 extconf.rb:4:警告:PATH中的不安全世界可写dir / usr / bin,模式040777 extconf.rb:7:警告:PATH中不安全的世界可写dir / usr / bin,模式040777 extconf.rb:17:警告:不安全的世界可写dir / usr在PATH中的/ bin,模式040777在-lmysqlclient中检查mysql_query()...在-lm中没有检查main()...在-lmysqlclient中检查mysql_query()...没有检查main()in - lz ...是在-lmysqlclient中检查mysql_query()...在-lsocket中没有检查main()...在-lmysqlclient中没有检查mysql_query()...在-lnsl中没有检查main() . ..没有检查-lmysqlclient中的mysql_query()...没有检查-lmygcc中的main()...没有检查-lmysqlclient中的mysql_query()...没有* extconf.rb失败*无法创建Makefile到期由于某种原因,可能缺少必要的库和/或 Headers 秒 . 检查mkmf.log文件以获取更多详细信息 . 您可能需要配置选项 . 提供的配置选项: - with-opt-dir --without-opt-dir --with-opt-include --without-opt-include = $ / include --with-opt-lib - without-opt-lib = $ / 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 = $ / include --with-mysql-lib --without-mysql-lib = $ / 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,我得到以下错误:

ERROR 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-leopard/

13 回答

  • 0

    如果你从源码安装这里是一个教程 . 如果它有帮助会很高兴http://raihan90.blogspot.com/2009/03/mysql-step-by-step-hacking-into-mysql.html

  • 157

    你的Ubuntu OS需要为mysql客户端安装库 sudo apt-get install libmysqlclient-dev

    之后只需安装 bundlebundle install

  • 2

    在Debian(或Ubuntu)系统上,只需使用以下命令安装libmysqlclient-dev软件包:

    sudo apt-get install libmysqlclient-dev
    

    然后:

    gem install mysql
    

    它将安装没有任何错误 .

  • 5

    首先,您需要区分MySQL作为服务器,MySQL作为客户端和Ruby绑定到MySQL .

    我不熟悉Mac,但对于* nix OS,您需要通过软件包管理器安装MySQL . 要安装Ruby绑定

    gem install mysql
    

    你需要ruby的开发头文件(在Ubuntu中它是包ruby-dev)和MySQL-Client的开发头文件(目前在Ubuntu中为 libmysqlclient16-dev ) . 我不知道它们在Mac上是否有不同的名称,但是在安装完这些内容之后,Ruby绑定应该安装没有任何错误 .

  • 0

    很多人发现this post很有帮助 .

    另外,我需要先做这个:

    yum install mysql-devel
    

    然后:

    gem install mysql
    

    对于某些人,您可能需要键入:

    gem install mysql -- --with-mysql-config=/usr/local/mysql/mysql_config
    
  • 0

    我也忘记了首先安装MySQL . 遵循本指南帮助了很多 .

    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
    
  • 3

    如果你使用Percona Mysql服务器

    $ yum安装Percona-Server-devel-55

    $ gem install mysql

  • 0

    Installing the mysql gem on OSX

    在终端..首先做'找到mysql_config' and then replace the path in the following command with where that file is .

    $ 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
    
  • 0

    在OSX mountain Lion上:如果您安装了 brew ,那么 brew install mysql 并按照 instructions 在您的计算机上使用mysql创建测试数据库 . 你不需要我做了之后我能够捆绑安装和耙 .

  • 17
    yum -y install gcc mysql-devel ruby-devel rubygems
    gem install mysql2
    
  • 61

    注意:您需要指定 - 键,而不是--with-mysql-config = / usr / local / mysql / bin / mysql_config

  • 0

    为了解决

    Gem :: Ext :: BuildError:错误:无法为mysql2构建gem原生扩展错误,我认为libmysql-ruby已经改成了ruby-mysql

    只需尝试以下命令,

    sudo apt-get install ruby-mysql

    & 然后

    sudo apt-get install libmysqlclient-dev
    
  • 9

    您可以尝试重新安装最新版本的xcode / dev . 雪豹工具 - 这应该可以解决你的错误

相关问题