質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.61%

curb gem のインストールエラー

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,288
退会済みユーザー

退会済みユーザー

https://doruby.jp/users/nakamatsu/entries/S3から複数のファイルを取得しつつ on-the-fly でZipを作ってブラウザに返す

これを参考に

gem 'zipline'

をかいて bundle install したのですが次のようなエラーが出ました
エラー内容で検索してもそれらしい記事にヒットしないので環境の問題な気がしますが
解決方法がわかれば教えていただけないでしょうか

Fetching curb 0.9.6
Installing curb 0.9.6 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    /usr/local/rbenv/versions/2.2.2/bin/ruby -r ./siteconf20181017-1039-1qqjsvm.rb extconf.rb
checking for curl-config... no
checking for main() in -lcurl... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/usr/local/rbenv/versions/2.2.2/bin/$(RUBY_BASE_NAME)
    --with-curl-dir
    --without-curl-dir
    --with-curl-include
    --without-curl-include=${curl-dir}/include
    --with-curl-lib
    --without-curl-lib=${curl-dir}/lib
    --with-curllib
    --without-curllib
extconf.rb:18:in `<main>':   Can't find libcurl or curl/curl.h (RuntimeError)

  Try passing --with-curl-dir or --with-curl-lib and --with-curl-include
  options to extconf.

extconf failed, exit code 1

Gem files will remain installed in /root/vendor/bundle/ruby/2.2.0/gems/curb-0.9.6 for inspection.
Results logged to /root/vendor/bundle/ruby/2.2.0/extensions/x86_64-linux/2.2.0-static/curb-0.9.6/gem_make.out

An error occurred while installing curb (0.9.6), and Bundler cannot continue.
Make sure that `gem install curb -v '0.9.6'` succeeds before bundling.

In Gemfile:
  zipline was resolved to 1.0.2, which depends on
    curb

環境:

ホストOSは mac OS 10.13.6 の docker コンテナ上
ruby-2.2.2  rbenv からインストール
rails-4.2.3
です

サーバーインフラ関係の知識がまったくないので
インストールエラーに関してはどこの何をみればいいのかまったくわかりません

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

0

まずは、エラーメッセージの内容を読んで理解していますか?

extconf.rb:18:in `<main>':   Can't find libcurl or curl/curl.h (RuntimeError)
   Try passing --with-curl-dir or --with-curl-lib and --with-curl-include
 options to extconf.

の部分がエラーです。

cURL がないと言われていますので、 cURL をインストールするか。インストール済みであれば、cURL をインストールした場所をオプションで指定して実行してください。


お使いの環境が、不明なので、具体的にどうすればいいという回答はつきにくいと思います。
具体的な回答が欲しいのであれば、回答者が症状を再現できるように質問内容も具体的に記載する必要があります。
今回の例では、OS や ruby の種類、バージョン等の情報。Ruby のインストール方法(パッケージ管理ならパッケージ名)等を具体的に記載するようにしてください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/10/23 15:20

    すいません調べるコマンドを探すのにも時間がかかってしまって

    ホストで docker info をたたくと

    Kernel Version: 4.9.93-linuxkit-aufs
    Operating System: Docker for Mac
    OSType: linux
    Architecture: x86_64

    となってました

    コンテナ上の /etc/issue は
    Ubuntu 17.04 \n \l
    でした

    キャンセル

  • 2018/10/23 15:29

    Ubuntu ですか

    ` sudo apt-get install libcurl-dev ` あたりでしょうかね。

    キャンセル

  • 2018/10/23 16:03

    sudo というコマンドははいってなかったです

    # apt-get install libcurl-dev
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    Package libcurl-dev is a virtual package provided by:
    libcurl4-openssl-dev 7.52.1-4ubuntu1.3
    libcurl4-nss-dev 7.52.1-4ubuntu1.3
    libcurl4-gnutls-dev 7.52.1-4ubuntu1.3
    You should explicitly select one to install.

    E: Package 'libcurl-dev' has no installation candidate

    3つから選べってかいてあるんですけどどれをいれればいいんでしょうか
    どれでもいいのでしょうか?

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.61%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る