Saya menggunakan Fedora 14 dan saya telah menginstal dan menjalankan server MySQL dan MySQL 5.1.42. Sekarang saya mencoba melakukan ini sebagai pengguna root:
gem install mysql
Tapi saya mendapatkan kesalahan ini:
Building native extensions. This could take a while...
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/ruby.h
Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
Ada apa di sini? Dalam ruby yang diinstal 1.8.7. dan rubygems terbaru 1.3.7.
Jawaban:
Bagi mereka yang mungkin bingung dengan jawaban yang diterima, seperti saya, Anda juga perlu menginstal header ruby [ ruby-devel ].
Artikel yang menyelamatkan kulitku ada di sini .
Dan ini adalah solusi yang telah direvisi (perhatikan bahwa saya menggunakan Fedora 13):
Untuk Debian, dan distribusi lainnya menggunakan kemasan gaya Debian header pengembangan ruby dipasang oleh:
Untuk Ubuntu, header pengembangan ruby diinstal oleh:
Jika Anda menggunakan versi ruby yang lebih lama (seperti 2.2), maka Anda harus menjalankan:
(di mana 2.2 adalah versi Ruby yang Anda inginkan)
sumber
yum -y install gcc ruby-devel rubygems
.Red Hat, Fedora:
Debian, Ubuntu:
Arch Linux:
sumber
ruby-devel
.Bagi siapa pun yang membaca ini di 2015: jika Anda menginstal paket
ruby2.0
, Anda harus menginstal yang cocokruby2.0-dev
untuk mendapatkan header Ruby yang sesuai. Hal yang sama berlaku untukruby2.1
danruby2.2
, dll. Misalnya:sumber
sudo dnf install ruby-devel
tampaknya
sudah cukup bagi saya untuk tampil
setelah itu.
Mungkin Anda perlu menginstal paket lain:
untuk dapat membangun ekstensi asli
sumber
Pengguna MAC mungkin menghadapi masalah ini ketika alat xcode tidak diinstal dengan benar. Di bawah ini adalah perintah untuk menghilangkan masalah tersebut.
sumber
sudo gem install -n /usr/local/bin cocoapods
thumbsupSaya menemukan solusinya di sini .
sumber
Posting ini membantu saya. Terima kasih banyak.
Di Linux (Ubuntu 12.10) saya perlu menjalankan
sebelum aku berhasil berlari
sumber
Jika Anda telah menginstal permata dan ruby dan tidak dapat menginstal rel, kemudian instal ruby dev lib.
Ini bekerja untuk saya. Saya sudah mencoba solusi yang berbeda.
sumber
Red Hat, Fedora:
sumber
Bagi mereka yang masih mengalami masalah, seperti yang saya miliki (saya menggunakan Ubuntu 16.04), saya harus memasukkan perintah berikut untuk mendapatkan beberapa permata seperti bcrypt, pg, dan lainnya yang diinstal. Mereka semua mirip dengan yang di atas kecuali satu.
Ini memungkinkan saya untuk menginstal permata seperti, PG, bcrypt, dan recaptcha.
sumber
Solusi awal saya adalah mengatasi kesalahan di atas dengan menginstal
ruby-devel
,patch
danrubygems
.Masalah saya sedikit berbeda karena bcrypt 3.1.11 masih memiliki masalah dalam kompilasi dan instalasi di Fedora 23. Saya membutuhkan paket tambahan. Jadi setelah memastikan saya menginstal di atas, saya masih mengalami masalah:
gcc: error: conftest.c: No such file or directory
gcc: error: /usr/lib/rpm/redhat/redhat-hardened-cc1: No such file or directory
Dari sini saya harus melakukan yang berikut:
Saya memastikan bahwa saya tidak kekurangan alat C compiler
sudo dnf group install "C Development Tools and Libraries"
Kemudian saya berlari
sudo dnf install redhat-rpm-config
untuk menyelesaikan masalah gcc yang tercantum di atas.Anda dapat menemukan tulisan di sini di Proyek Fedore . Anda juga dapat menemukan jawaban untuk kebutuhan lain.
sumber
Perintah ini memecahkan masalah bagi saya!
sumber
Anda perlu menginstal paket berikut:
ruby-dev
gcc
libffi-dev
membuat
Inilah perintah untuk debian distro:
sumber
di openSUSE:
Bekerja untuk saya :)
sumber
Diperlukan untuk menginstal redhat-rpm-config. Saya kira itu menyelesaikan masalah Anda!
sumber
Ini bekerja untuk saya:
sumber
Anda mungkin mengacaukan RVM.
Coba lakukan:
sumber
Hanya untuk menambahkan path ke file ruby.h di PATH saya
misalnya:
sumber