Почему я не могу установить SQLite gem?



Я пытаюсь установить SQLite gem на Fedora 9 Linux box с Ruby 1.8.6, Rails 2.2.2, gem 1.3 и sqlite-3.5.9. Вот команда, которую я запускаю, и ее результаты:



sudo gem install sqlite3-ruby
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.

/usr/bin/ruby extconf.rb install sqlite3-ruby
can't find header files for ruby.

Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.4 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.4/ext/sqlite3_api/gem_make.out


gem_make.out просто повторяет то, что уже было отправлено на консоль. Как я могу установить этот камень?

758   13  

13 ответов:

SQLite RubyGem на самом деле не Рубинкамень, это "CGem", IOW это написано в C. Это означает, что он должен быть скомпилирован и связан с интерпретатором Ruby при его установке и для того, чтобы сделать это нужны заголовочные файлы C для интерпретатора Ruby.

если вы сами скомпилируете Ruby, эти заголовочные файлы будут установлены автоматически, однако в системах RedHat-ish такие заголовочные файлы обычно упаковываются в отдельный пакет пакет, называется <whatever>-dev. Так, в этом случае вам нужно будет установить ruby-dev пакета и, возможно,libsqlite3-dev (Ubuntu) или sqlite-devel (Fedora) пакет, а также.

тем не менее, вам может быть лучше просто установить предварительно упакованную операционную систему libsqlite3-ruby пакет, таким образом, все зависимости автоматически удовлетворяются.

(Примечание: все имена пакетов, вытащенные из воздуха, могут отличаться в вашей системе.)

вам, вероятно,нужен пакет Ruby dev. Для Ubuntu нужно установить наследником пакетов ruby1.8-разработчика, которая включает в себя заголовок Ruby файлы. Быстрый google говорит, что пакет yum-это ruby-devel. так что запустите это:

sudo yum install ruby-devel

Я столкнулся с проблемой установки sqlite3-ruby gem На моем fedora 13 box. Это было исправлено после sudo yum install sqlite-devel

когда у меня была эта проблема:

gem install sqlite3 -v '1.3.9'
Building native extensions.  This could take a while...
ERROR:  Error installing sqlite3:
    ERROR: Failed to build gem native extension.

для меня работал, установка "libsqlite3-dev" С:

apt-get install libsqlite3-dev
sudo apt-get install ruby-dev

фиксированная это для меня.

на Ubuntu 9 и 10 попробуйте:

sudo apt-get install ruby-dev
sudo apt-get install sqlite3-dev

затем запустите

gem install sqlite3

выполните следующие действия для ОС Fedora:

yum install rubygem-sqlite3

У вас есть весь исходный код, необходимый для построения sqlite3-ruby? Перл пытается компилировать код C и не может найти заголовки. Вероятно, вы можете использовать Fedora rpm для sqlite3-ruby (я не использую fedora, но я уверен, что он существует), если вы предпочитаете отказаться от компиляции. Лично для ruby stuff я предпочитаю использовать gem, а не систему упаковки дистрибутива.

Я не очень знаком с Fedora, но в Ubuntu, когда вы устанавливаете пакеты, у вас есть apt-get, и вам нужно установить build-essentials, который включает gcc и другие инструменты компиляции для C. Я бы сказал, что это может быть ваша проблема, и вы посмотрите, как это можно установить либо с помощью RPM, либо apt-get на Fedora.

я исправил проблему на моем OLPC (Fedora 9), установив 'gcc' достаточно странно. Похоже, это должен был быть один из тех пакетов Дев, но нет.

кроме того, что касается других пакетов, суффикс "-девел", а не "игры", поэтому убедитесь, что вы получаете те, которые заканчиваются так: "Руби-роз", "веб-разработка"...

Как только вы это установите, если вы получаете ошибки о том, что ваши драгоценные камни слишком старые "

НТН...

запустите "sudo yum install sqlite-devel", а затем"gem install sqlite3". Была такая же проблема на моей Fedora 15.

У меня была эта же проблема...вместо того, чтобы украшать недостающие части, я использовал synaptic на unbuntu.

ключевой пакет для меня был libsqlite-ruby1.9 .1... Я задокументировал свой опыт (для справки) с этой ошибкой на : Sqlite3-gem-error-during-bundle-install

на alpine, вам нужно установить .

Comments

    Ничего не найдено.