mysql ruby gem未在Windows 7上安装
不是复制品。这个问题是mysqlgem,另一个问题是mysql2gem。虽然他们有相同的答案,但另一个问题的答案并没有明确说明解决方案是什么。答案隐藏在评论中。此问题包含解决方案,请参见答案的黄色文本 下面是我在尝试在Windows上安装mysql gem时收到的一个错误mysql ruby gem未在Windows 7上安装,mysql,ruby,windows-7,gem,rubygems,Mysql,Ruby,Windows 7,Gem,Rubygems,不是复制品。这个问题是mysqlgem,另一个问题是mysql2gem。虽然他们有相同的答案,但另一个问题的答案并没有明确说明解决方案是什么。答案隐藏在评论中。此问题包含解决方案,请参见答案的黄色文本 下面是我在尝试在Windows上安装mysql gem时收到的一个错误 C:\>gem install mysql Temporarily enhancing PATH to include DevKit... Building native extensions. This could
C:\>gem install mysql
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
C:/Ruby22-x64/bin/ruby.exe -r ./siteconf20150520-7968-hbly9l.rb extconf.rb
checking for main() in -llibmysql... 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
--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=C:/Ruby22-x64/bin/$(RUBY_BASE_NAME)
--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-libmysqllib
--without-libmysqllib
extconf failed, exit code 1
Gem files will remain installed in C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/mysql-
2.9.1 for inspection.
Results logged to C:/Ruby22-x64/lib/ruby/gems/2.2.0/extensions/x64-mingw32/2.2.0
/mysql-2.9.1/gem_make.out
我是怎么做到这一点的?
gem update --system
…已安装在C:/Ruby22-x64/bin/gem中
gem install rubygems-update
update_rubygems
…然后cd{文件夹解压缩到}
ruby setup.rb
ruby dk.rb init
gem install rdiscount --platform=ruby
然后我运行了这个命令,得到了一个错误
ruby dk.rb install
我必须确保“config.yml”文件指向我机器上安装Ruby的C:\Ruby22-x64文件夹。我删除了注释并更改了路径。然后重新运行该命令,它就工作了
ruby dk.rb install
然后运行这个命令
ruby dk.rb init
gem install rdiscount --platform=ruby
C:\>gem安装mysql2--platform=ruby----with mysql lib=“C:\mysql connector\
lib”--带有mysql include=“C:\mysql connector\include”--带有mysql dir=“C:\mysq
l型连接器“'
暂时增强包含DevKit的路径。。。
使用“--with mysql lib=“C:\mysql connector\lib”--wi构建本机扩展
th mysql include=“C:\mysql connector\include”--带有mysql dir=“C:\mysql connect
或“'
这可能需要一段时间。。。
错误:安装mysql2时出错:
错误:无法生成gem本机扩展。
C:/Ruby22-x64/bin/ruby.exe-r./siteconf20150521-10824-1plgdr8.rb extconf.rb
--使用mysql lib=“C:\mysql connector\lib”--使用mysql include=“C:\mysql connec
tor\include”--带有mysql dir=“C:\mysql连接器”
正在检查ruby/thread.h…是
在ruby/thread.h中检查rb_线程调用(不带\u gvl())。是
正在检查rb_线程_阻塞_区域()…否
正在检查rb\u等待\u单个\u fd()…是
正在检查rb_hash_dup()…是
正在检查rb_intern3()…是
-----
使用--with mysql dir=C:\mysql connector\include;C:\mysql connector\include;C:\
mysql连接器
-----
正在检查mysql.h…是的
正在检查errmsg.h…是
正在检查mysqld_错误。h…是
***extconf.rb失败***
由于某些原因无法创建Makefile,可能缺少必要的
库和/或标头。有关详细信息,请查看mkmf.log文件。您可以
需要配置选项。
提供的配置选项:
--使用opt dir
--不带opt dir
--选择包含
--不带opt include=${opt dir}/include
--使用opt lib
--不带opt lib=${opt dir}/lib
--用make prog
--没有make prog
--srcdir=。
--库尔迪尔
--ruby=C:/Ruby22-x64/bin/$(ruby\u BASE\u NAME)
--使用mysql目录
--使用mysql include=${mysql dir}/include
--使用mysql-lib=${mysql-dir}/lib
C:/Ruby22-x64/lib/ruby/2.2.0/rake/task_manager.rb:62:in`[]:不知道如何
构建任务'C:/mysql connector/lib;C:/mysql connector/lib;C:/mysql connector/lib
/libmysql.lib'(运行时错误)
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:57:in'lookup_prerequision
e'
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:53:in`prerequires中的block
ite_任务'
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:53:in'map'
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:53:in'prerequisite_tasks
'
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:199:in'invoke_prerequisi
tes'
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:178:in`block in invoke\u w
它叫“链”
来自C:/Ruby22-x64/lib/ruby/2.2.0/monitor.rb:211:in'mon\u synchronize'
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:172:in'invoke_with_call_
连锁店
来自C:/Ruby22-x64/lib/ruby/2.2.0/rake/task.rb:165:in'invoke'
来自extconf.rb:117:in`'
extconf失败,退出代码1
Gem文件仍将安装在C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/mysql2中
-0.3.18用于检查。
结果记录到C:/Ruby22-x64/lib/ruby/gems/2.2.0/extensions/x64-mingw32/2.2.0
/mysql2-0.3.18/gem_make.out
C:\>
“mysql”和“mysql2”包/扩展/gems不能与
Windows 7上64位版本的Ruby(或任何64位版本的
您需要为安装x86(32)位版本的Ruby
让他们工作
因此,我在我的问题中重复了第3步,安装了1.9版,取而代之的是2013年8月30日luislavena在我的问题(191期)中的评论。这是x86(32位)版本。从这里获得
看起来文件名是“rubynstaller-1.9.3-p551.exe”
然后完成第4步。Ruby开发
gem list
C:/row/Ruby22/lib/ruby/gems/2.2.0/gems/nokogiri-1.6.6.2-x86-mingw32/lib/nokogiri
.rb:29:in `require': cannot load such file -- nokogiri/nokogiri (LoadError)
from C:/row/Ruby22/lib/ruby/gems/2.2.0/gems/nokogiri-1.6.6.2-x86-mingw32
/lib/nokogiri.rb:29:in `rescue in <top (required)>'
...
... continued