Установка Mysql gem на OSX ошибка - «Данные Marshal слишком короткие» - PullRequest
2 голосов
/ 03 августа 2009

Ошибка 'marshal data too short' при попытке установить гем mysql в OSX. Обыскивая, я слышал предложения по очистке .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

Ответы [ 3 ]

3 голосов
/ 10 сентября 2009

Я получил ту же ошибку на моем компьютере с Windows, если бы я использовал gem.

ERROR:  While executing gem ... (ArgumentError)    
marshal data too short

Удалять каталог кеша gem "c: \ Documents and Settings \ MyUser \ .gem" у меня работало. Кажется, что некоторые данные сохраняются, даже если вы переустановите ruby. Возможно, кешированный файл был поврежден.

0 голосов
/ 04 августа 2009

Кроме того, каталог .gem находится в вашем домашнем каталоге: /Users/yourname/.gem

Надеюсь, это поможет.

0 голосов
/ 03 августа 2009

Попробуйте использовать приведенную ниже команду. Укажите местоположение каталога mysql в вашей OS X.

sudo gem install mysql - --with-mysql-dir = / usr / local / mysql

http://hivelogic.com/articles/installing-mysql-on-mac-os-x/

Проверьте ссылку для установки Mysql на Mac OSX, если вы неправильно установили.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...