尝试在OSX上安装mysql gem时出现“marshal data too short”错误。我听到了清除.gems的建议,但似乎在系统中找不到它。有人能提供帮助吗?
apple$ sudo gem install mysql --backtrace --debug
Exception `NameError' at /Library/Ruby/Site/1.8/rubygems/command_manager.rb:161 - uninitialized constant Gem::Commands::InstallCommand
Exception `Gem::LoadError' at /Library/Ruby/Site/1.8/rubygems.rb:826 - Could not find RubyGem test-unit (>= 0)
Exception `ArgumentError' at /Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:111 - marshal data too short
ERROR: While executing gem ... (ArgumentError)
marshal data too short
/Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:111:in `load'
/Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:111:in `fetch_spec'
/Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:71:in `fetch'
/Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:70:in `map'
/Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:70:in `fetch'
/Library/Ruby/Site/1.8/rubygems/dependency_installer.rb:99:in `find_gems_with_sources'
/Library/Ruby/Site/1.8/rubygems/dependency_installer.rb:192:in `find_spec_by_name_and_version'
/Library/Ruby/Site/1.8/rubygems/dependency_installer.rb:213:in `install'
/Library/Ruby/Site/1.8/rubygems/commands/install_command.rb:118:in `execute'
/Library/Ruby/Site/1.8/rubygems/commands/install_command.rb:115:in `each'
/Library/Ruby/Site/1.8/rubygems/commands/install_command.rb:115:in `execute'
/Library/Ruby/Site/1.8/rubygems/command.rb:257:in `invoke'
/Library/Ruby/Site/1.8/rubygems/command_manager.rb:132:in `process_args'
/Library/Ruby/Site/1.8/rubygems/command_manager.rb:102:in `run'
/Library/Ruby/Site/1.8/rubygems/gem_runner.rb:58:in `run'
/usr/bin/gem:21发布于 2009-09-09 20:29:44
如果我使用gem,我会在我的windows机器上得到同样的错误。
ERROR: While executing gem ... (ArgumentError)
marshal data too short删除gem缓存目录"c:\Documents and Settings\MyUser.gem“对我来说很有效。即使你重新安装ruby,似乎也会保存一些数据。可能缓存的文件已损坏。
发布于 2009-08-03 08:10:18
尝试使用下面的命令。提供您的OS X中mysql目录的位置。
sudo gem install mysql -with-mysql-dir=/usr/local/mysql
http://hivelogic.com/articles/installing-mysql-on-mac-os-x/
如果您没有正确安装Mysql,请检查在Mac OSX上安装Mysql的链接。
祝你好运!
发布于 2009-08-03 22:06:33
此外,.gem目录位于您的主目录中:/Users/yourname/.gem
希望这能有所帮助。
https://stackoverflow.com/questions/1220009
复制相似问题