Я знаю, что это действительно старый вопрос, но, поскольку я только что столкнулся с той же проблемой, я решил добавить свои соображения по этому вопросу.
Итак, это произошло, когда я пытался установить один и тот же набор драгоценных камней на две разные машины с разными архитектурами, в разных местах и соответственно в разных сетях. То есть - мой домашний mac и удаленный сервер linux.
Итак, один конкретный гем (dm-sqlite-adapter) не удалось установить на обе машины, и я даже пробовал его пару раз, но всегда с одним и тем же результатом:
$ gem install dm-sqlite-adapter
ERROR: While executing gem ... (Zlib::DataError)
invalid code lengths set
Затем я потратил несколько минут на поиск решения в сети, включая чтение этой ветки.
Так как я не нашел удовлетворительного ответа и не был доволен идеей переустановки всего, решил действовать глупо и попробовал gem install
еще раз .. И это сработало. Затем попробовал другую машину - работал как шарм.
Итак, в заключение я бы предположил, что проблема возникла из-за удаленного репозитория, и, возможно, гем даже не загрузился вообще (я забыл проверить это, прежде чем успешно установить его). Но, как я уже сказал, это всего лишь предположение ..