Ошибка установки gem не смогла собрать собственные расширения gem - не могу загрузить такой файл - mkmf

RoR - это хорошо, но иногда хочется, чтобы я ударился головой о стену (и в любом случае это моя вина). Я просто пытаюсь установить Thin жемчужина веб-клиента, и когда я запускаю sudo gem install thin, Я получаю следующую ошибку (сначала требуется установка гема Eventmachine):

    sudo gem install thin
    Fetching: eventmachine-1.0.1.gem (100%)
    Building native extensions.  This could take a while...
    ERROR:  Error installing thin:
            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:2:in `<main>'

Я искал ошибку "не могу загрузить такой файл - mkmf", но большинство проблем, кажется, связано с тем, что он был доступен в 1.8-dev, но не в 1.8, но, поскольку я работаю 1.9.3, я понял, что был mkmf - который я проверил с locate mkmf:

    /home/ubuntu/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/mkmf.rb

Каталог, в котором находится mkmf, очевидно, не находится в каталоге / usr / lib / ruby ​​/... - я не уверен, является ли это моей проблемой или нет, но этого может быть достаточно, чтобы запустить одного из вас как к тому, что происходит и каким может быть решение.

Кроме того, я использовал RVM для установки ruby ​​1.9.3, а не просто gem install...

Заранее спасибо!

5 ответов

Решение

Если вы используете RVM, вам никогда не следует использовать sudo. Использование sudo вызывает libs и тому подобное вне пути rvm. Попробуй просто квартиру

gem install thin

и посмотрим, поможет ли это.

~ Кевин

У меня была похожая ошибка с этим вне rvm, я обнаружил, что мне нужно установить ruby-devel

У меня такая же проблема в Ubuntu 12.04 . Решено:

sudo apt-get install build-essential
sudo apt-get install curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev

Попробуйте команду ниже, это поможет решить проблему

sudo gem install thin -- --with-cflags=\"-O2 -pipe -march=native -w\"

Это сделало это для меня:

sudo apt-get install ruby-dev

ура

Другие вопросы по тегам