Не удалось собрать собственное расширение gem при установке RedCloth-4.2.9 при установке Linux
Я хочу установить Octopress
в моем компьютере. Я пытаюсь сделать это как
Когда я бегу
bundle install
Я получил сообщение об ошибке
An error occured while installing RedCloth (4.2.9), and Bundler cannot continue.
Make sure that `gem install RedCloth -v '4.2.9'` succeeds before bundling.
Итак, я бегу
sudo gem install RedCloth -v '4.2.9'
затем я снова получил сообщение об ошибке:
ERROR: Error installing RedCloth:
ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from extconf.rb:1:in `<main>'
Я не узнал никаких знаний о рубине.
8 ответов
Вы, вероятно, обновились до Mountain Lion
и не восстановили свой ruby-1.9.2
установить еще с новыми пакетами разработки.
rvm --force install 1.9.2
gem install bundle --no-ri --no-rdoc
bundle install
Если у вас нет Mountain Lion
пакеты dev установлены правильно, используйте инструкции ThoughtBot.
Мое решение для Ubuntu 12.04 - установить полную версию ruby1.9.1, которая может решить эту проблему.
sudo apt-get install ruby1.9.1-full
Вы можете выполнить команду:
sudo update-alternatives --config ruby
выбрать альтернативный рубин, который вы установили. и затем выполните следующие команды, чтобы завершить развертывание octopress:
git clone https://github.com/erizhang/octopress.git octopress
cd octopress/
sudo gem install bundler
sudo gem install RedCloth -v '4.2.9'
bundle install
rake install
Ниже приведены команды, которые вы можете найти на странице руководства по развертыванию octopress:
rake setup_github_pages
sudo rake setup_github_pages
sudo rake generate
sudo rake deploy
Надеюсь, это полезно для вас, спасибо
Я исправил эту проблему, запустив
sudo apt-get install ruby-dev
как описано в этом сообщении в блоге.
Я тоже устанавливал Octopress и получил ту же проблему, что и у вас. После проверки mkmf.log
Файл, который я выяснил, что gcc-4.2 не был найден. Я даже установил xcode с помощью инструментов командной строки. Это сработало, когда я сделал символическую ссылку примерно так:
$ sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
$ bundle install
Для Ubuntu 14.04 просто сделайте это:
sudo apt-get install ruby1.9.3
Должно работать на 13.10 и 13.04 тоже. (Не испытано)
Похоже, вы не используете rvm для управления вашей установкой ruby. Я думаю, что лучше всего попробовать rvm, вот очень хорошее руководство, вы можете остановиться, не устанавливая рельсы: ruby с rvm
Тогда просто
$gem install RedCloth
Неуправляемые рубиновые камни - это боль, я стараюсь их избегать.
Ни один из ответов не работал на моем Ubuntu 14.04.1 LTS. Обновление до ruby 2.0 исправило проблему для меня:
sudo apt-get install ruby2.0 ruby2.0-dev
sudo ln -s /usr/bin/ruby2.0 /usr/bin/ruby
sudo ln -s /usr/bin/gem2.0 /usr/bin/gem
sudo gem install bundler
Убедитесь, что у вас также есть build-essential
пакет установлен. Вы можете проверить, используя
dpkg -l | grep build-essential
или просто установите его без проверки
sudo apt-get install build-essential
Для меня на Ubuntu 14.04.1 LTS, убедившись, build-essential
установлен, bundle install
Команда работает / строит также хорошо с Ruby 1.9.3.