198

Ruby 1.9.3

Gemfileの一部

#...............
gem "pony"
gem "bcrypt-ruby", :require => "bcrypt"
gem "nokogiri" 
#..................

gemをインストールしようとすると、エラーが発生します

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.

それから私はこれをやっています

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

エラーも発生します。

私は何を取りこぼしたか?

4

16 に答える 16

457

同様の質問があります:

通常、解決策は次のとおりです。

sudo apt-get installruby-dev

または、それが機能しない場合は、rubyのバージョンに応じて、次のように実行します。

sudo apt-get install ruby​​1.9.1-dev

問題を解決する必要があります。


まだ動作していません?ruby-devをインストールした後、次のことを試してください。

sudo apt-get install make

于 2012-12-07T17:13:20.137 に答える
22

build-essentialWSL(Windows Subsystem for Linux)の場合、次のパッケージをインストールする必要があります。

sudo apt install build-essential
于 2019-04-25T18:10:01.840 に答える
11

これを解決するために2時間の野生のガチョウの追跡を終えたところです。投稿された回答はどれも私には役立たなかった。MacのIm(Mojaveバージョン10.14.6、Xcodeバージョン11.3)。

ルビーファイルのヘッダーが欠落していることが判明したため、実行する必要がありましたopen /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

インストールしたCommandLineToolsのバージョンに「Packages」フォルダーがなかったため、最初はうまくいきませんでした。だから私はこのようにアンインストールして再インストールしました:

rm -rf /Library/Developer/CommandLineTools

xcode-select --install

次に、前のコマンドを再度実行しました。

open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

インストール後、エラーが修正されました!

于 2019-12-12T15:25:24.503 に答える
9

jquery-railsをインストールしようとしても同じ問題が発生しました。修正は

sudo apt-get install zlibc zlib1g zlib1g-dev
于 2015-11-11T04:31:51.180 に答える
7

将来誰かがこの問題を抱えている場合に備えて、私はMacを使用しており、「xcode-select--install」を使用してコマンドラインツールをインストールする必要がありました。

于 2015-07-11T22:32:01.523 に答える
5

別のバージョンのrubyをインストールする必要があることがわかりました。したがって、コマンドを実行する

$ sudo apt-get install ruby1.9.1-dev

次に、拡張機能のインストールを試みます

g ++がないという問題が発生した場合は、次のコマンドを実行してインストールできます。

$ sudo apt-get install g++
于 2015-11-19T09:18:44.990 に答える
5

MacOS 10.15(Catalina)と11(Big Sur)にcocoapodsをインストールするための小さなhackMDを作成しました

https://hackmd.io/@sBJPlhRESGqCKCqV8ZjP1A/S1UY3W7HP

MacOS Catalina(MacOS 10.15.X)およびBig Sur(MacOS 11)へのCocoapodsのインストール

  1. xcodeコンポーネントがインストールされていることを確認してください。

  2. このリンクから直接「コマンドラインツール」(約500MB)をダウンロードします(アップルアカウントが必要です) https://developer.apple.com/downloads/index.action

  3. ダウンロードしたファイルをインストールします

  4. [インストール]をクリックします

  5. ターミナルにCOCOAPODSファイルをインストールします sudo gem install -n /usr/local/bin cocoapods

于 2020-09-19T05:09:56.703 に答える
3
  1. ruby-devインストールされていることを確認してください
  2. makeインストールされていることを確認してください
  3. それでもエラーが発生する場合は、提案されたパッケージを探してください。のようなものをインストールしようとしている場合は、lib ( )gem install pgもインストールする必要があります。libpq-devsudo apt-get install libpq-dev
于 2015-05-29T05:21:11.693 に答える
3

MacOSユーザーの場合:

これを行うだけで、簡単に問題を解決できます。

brew install cocoapods
于 2021-01-22T04:01:23.087 に答える
2

これは私のために働いた。 bundle config --global build.snappy --with-opt-dir="$(brew --prefix snappy)"

于 2020-05-08T18:16:37.073 に答える
1

また、libmysqlclient-devがインストールされていることを確認するのにも役立ちます(Ubuntu 14.04)

于 2015-12-10T21:45:02.310 に答える
1

数時間の痛みの後、何が私のために働いたのか。

brewを実行している場合。

brew install ruby

ターミナルの出力/ログで、rubyがインストールされたパスを特定し、brewは「これをPATHに追加することをお勧めします」と提案します。これを実行します。たとえば、私のものは

/usr/local/lib/ruby/gems/3.0.0/bin

(中括弧を省略して)実行して、これをパスに追加します

echo 'export PATH"{the_path_you_found_above}:$PATH"' >> ~/.bash_profile

次に、を実行して環境を更新します

source ~/.bash_profile

今、あなたのインストールを実行してみてください、すなわち、

sudo gem install middleman
于 2021-01-22T07:09:05.090 に答える
1

Macユーザーの場合は、使用しているclangバージョンを更新する必要があります。これを検索して何時間も費やし、アンインストールしたxcodeコマンドラインツールをインストールしましたが、役に立ちませんでした。私は走っgcc -vApple clang version 11.0.0 (clang-1100.0.33.8出力されました。それから私は走りました、そしてxcode-select -s /Library/Developer/CommandLineTools/、clangバージョンはに更新されましたApple clang version 12.0.0 (clang-1200.0.32.29)。その後、バンドルのインストールは成功しました。これがお役に立てば幸いです。

于 2021-03-03T23:35:13.990 に答える
1

ワード検索アプリを作成していて、cocoapodsをインストールする必要がありました。Macをフォーマットしてxcodeを再インストールした後も、cocoapodsをインストールしようとするとエラーが発生しました。

そして、これに対する解決策は次のとおりでした。

この記事の執筆時点での最新バージョンであるCocoaPods1.9.0は​​、2.3.7よりも新しいバージョンのRubyに依存しているようです。ただし、macOSMojaveにはRuby2.3.​​7しか含まれていないため、いくつかの異なるオプションがあります。

    Upgrade to macOS Catalina and get Ruby 2.6.3
    Use Ruby Version Manager to install a newer version of Ruby
    Install an older version of CocoaPods
    sudo gem install cocoapods -v 1.8.4

私は3をしました:

sudo gem install cocoapods -v 1.8.4

于 2021-04-22T22:46:32.240 に答える
0

Macでは、私にとってこれは機能します:

CONFIGURE_OPTS="--enable-shared" rbenv install 2.2.2
于 2016-08-19T08:24:51.570 に答える
0

解決策を探した結果、ruby1.8だけでなく、-devパッケージが必要であることがわかりました。したがって、ruby1.9.1を使用している場合

sudo apt-get install ruby1.9.1-dev

または、一般的なルビーバージョンをインストールするには、(@ lamplightdevコメントに従って)を使用します。

sudo apt-get install ruby-dev

それを修正する必要があります。

mkmfを見つけて、ファイルが実際にそこにあるかどうかを確認してください。

于 2017-08-01T10:20:49.223 に答える