Ruby 1.9.3
Bagian dari Gemfile
#...............
gem "pony"
gem "bcrypt-ruby", :require => "bcrypt"
gem "nokogiri"
#..................
Ketika saya mencoba memasang permata, saya mendapatkan kesalahan
alex@ubuntu:~/$ bundle
Fetching gem metadata from http://rubygems.org/.........
Fetching gem metadata from http://rubygems.org/..
Enter your password to install the bundled RubyGems to your system:
#####............................................................
Installing bcrypt-ruby (3.0.1) with native extensions
Gem::Installer::ExtensionBuildError: 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:36:in `<main>'
Gem files will remain installed in /home/alex/.bundler/tmp/5526/gems/bcrypt-ruby-3.0.1 for inspection.
Results logged to /home/alex/.bundler/tmp/5526/gems/bcrypt-ruby-3.0.1/ext/mri/gem_make.out
An error occurred while installing bcrypt-ruby (3.0.1), and Bundler cannot continue.
Make sure that `gem install bcrypt-ruby -v '3.0.1'` succeeds before bundling.
Lalu aku melakukan ini
sudo gem install bcrypt-ruby -v '3.0.1'
Building native extensions. This could take a while...
ERROR: Error installing bcrypt-ruby:
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:36:in `<main>'
Gem files will remain installed in /var/lib/gems/1.9.1/gems/bcrypt-ruby-3.0.1 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/bcrypt-ruby-3.0.1/ext/mri/gem_make.out
dan mendapatkan kesalahan juga.
Apa yang saya lewatkan?
Jawaban:
Ada pertanyaan serupa:
Biasanya, solusinya adalah:
Atau, jika itu tidak berhasil, tergantung pada versi ruby Anda , jalankan sesuatu seperti:
Harus memperbaiki masalah Anda.
Masih tidak bekerja? Coba yang berikut ini setelah menginstal ruby-dev:
sumber
ruby1.9.1-dev
saya juga harussudo apt-get install make
. Terima kasih!sudo apt-get install ruby
(tanpa menentukan versi) maka Anda tidak perlu terlalu khawatir tentang versi Anda jika Anda hanya menginstalsudo apt-get install ruby-dev
sudo apt-get install gcc make
Untuk WSL (Windows Subsystem untuk Linux) Anda perlu menginstal
build-essential
paket:sumber
Saya memiliki masalah yang sama ketika mencoba menginstal jquery-rails. Cara mengatasinya adalah
sumber
zlib1g-dev
akan memberi Anda apa yang Anda butuhkan di sini, atau setidaknya itu untuk saya.Saya menemukan bahwa saya perlu menginstal ruby versi lain. Jadi jalankan perintah
dan kemudian mencoba menginstal ekstensi
Jika Anda mengalami masalah di mana ia memberi tahu Anda bahwa Anda tidak memiliki g ++, Anda dapat menjalankan perintah berikut untuk menginstalnya
sumber
Baru saja menyelesaikan pengejaran angsa liar 2 jam mencoba menyelesaikan ini. Tidak ada jawaban yang diposting yang berfungsi untuk saya. Saya di Mac (Versi Mojave 10.14.6, Versi Xcode 11.3).
Ternyata header file ruby hilang jadi saya harus menjalankan
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
Awalnya itu tidak berhasil bagi saya karena versi CommandLineTools yang saya instal tidak memiliki folder "Paket". Jadi saya menghapus dan menginstal ulang seperti ini:
rm -rf /Library/Developer/CommandLineTools
xcode-select --install
Kemudian saya menjalankan perintah sebelumnya lagi:
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
Setelah menginstal kesalahan diperbaiki!
sumber
Jika ada orang di masa depan yang memiliki masalah ini, saya menggunakan Mac dan hanya harus menginstal Command Line Tools menggunakan 'xcode-select --install'
sumber
ruby-dev
sudah terpasangmake
sudah terpasanggem install pg
Anda, Anda juga harus menginstal liblibpq-dev
(sudo apt-get install libpq-dev
).sumber
Ini juga membantu memastikan libmysqlclient-dev diinstal (Ubuntu 14.04)
sumber
Ini berhasil untuk saya.
bundle config --global build.snappy --with-opt-dir="$(brew --prefix snappy)"
sumber
Di Mac, bagi saya ini berfungsi:
sumber
Setelah beberapa mencari solusi, ternyata paket -dev diperlukan, bukan hanya ruby1.8. Jadi, jika Anda memiliki ruby1.9.1 lakukan
atau untuk menginstal versi ruby umum, gunakan (sesuai komentar @lamplightdev):
harus memperbaikinya.
Coba cari mkmf untuk melihat apakah file tersebut benar-benar ada.
sumber