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

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

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

RubyGems

RubyGemsはRubyによるプログラミングのためのパッケージマネジメントツールです。ユーザはこれを使用することで、Rubyライブラリのダウンロードやアップデートや、依存関係の自動解決が可能になります。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

2回答

9426閲覧

nokogiriが原因でbundle installが通らない

mendosa

総合スコア11

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

RubyGems

RubyGemsはRubyによるプログラミングのためのパッケージマネジメントツールです。ユーザはこれを使用することで、Rubyライブラリのダウンロードやアップデートや、依存関係の自動解決が可能になります。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

0クリップ

投稿2014/12/28 07:15

環境

  • CentOS6.6
  • ruby 2.1.2
  • rails 4.2.0

内容
1日中、悩んだのですが、完全に詰まってしまい、もうどうにも出来なくなってしまいました。
どなたか助けて頂けると嬉しいです。
目的は、nokogiriをインストールし、bundle installを通す事です。

まず、Gemfileは下記の通りです。

lang

1source 'https://rubygems.org' 2 3ENV['NOKOGIRI_USE_SYSTEM_LIBRARIES'] = 'YES' 4gem 'nokogiri', '1.6.5' 5 6###initial 7gem 'rails', '4.2.0' 8gem 'mysql2', '0.3.17' 9gem 'sass-rails', '5.0.0' 10gem 'bootstrap-sass', '3.3.1.0' 11 12gem 'uglifier', '2.6.0' 13gem 'coffee-rails', '4.1.0' 14gem 'therubyracer', '0.12.1', platforms: :ruby 15gem 'jquery-rails', '4.0.2' 16gem 'jbuilder', '~> 2.0' 17gem 'sdoc', '~> 0.4.0', group: :doc 18gem "pry-rails", '0.3.2' 19gem 'bcrypt', '3.1.9' 20 21group :development, :test do 22 # gem 'byebug' 23 gem 'rspec-rails', '3.1.0' 24 gem 'spring', '1.2.0' 25 gem 'web-console', '~> 2.0' 26end 27 28group :deployment do 29 gem 'capistrano', '3.3.5' 30 gem 'capistrano-rails', '1.1.2' 31 gem 'capistrano-rbenv', '2.0.2' 32 gem 'capistrano-bundler', '1.1.3' 33end 34 35group :test do 36 gem 'selenium-webdriver', '2.35.1' 37 gem 'capybara', '2.1.0' 38 gem 'minitest',"5.4.2" 39 gem "database_cleaner","1.3.0" 40 gem "launchy", '2.4.3' 41end 42

上記環境で、bundle installをすると、nokogoriのところで詰まっており、以下のようなエラーメッセージが出ます。

lang

1[usr@XXXX app]$ bundle install 2 3Fetching gem metadata from https://rubygems.org/......... 4Using rake 10.4.2 5Using i18n 0.7.0 6Using json 1.8.1 7Using minitest 5.4.2 8Using thread_safe 0.3.4 9Using tzinfo 1.2.2 10Using activesupport 4.2.0 11Using builder 3.2.2 12Using erubis 2.7.0 13Using mini_portile 0.6.1 14Using nokogiri 1.6.5 15 16Gem::RemoteFetcher::FetchError: Errno::ETIMEDOUT: Connection timed out - connect(2) for "au-m.rubygems.org" port 443 (https://rubygems.org/gems/rails-deprecated_sanitizer-1.0.3.gem) 17An error occurred while installing rails-deprecated_sanitizer (1.0.3), and Bundler cannot continue. 18Make sure that `gem install rails-deprecated_sanitizer -v '1.0.3'` succeeds before bundling. 19

メッセージ通りにgem install rails-deprecated_sanitizer -v '1.0.3'を実行すると、無事に成功します。

lang

1[usr@XXXX app]$ sudo gem install rails-deprecated_sanitizer -v '1.0.3' 2 3Successfully installed rails-deprecated_sanitizer-1.0.3 4Parsing documentation for rails-deprecated_sanitizer-1.0.3 5Done installing documentation for rails-deprecated_sanitizer after 0 seconds 61 gem installed

そこで、再度bundle installを実行すると、上記と全く同じメッセージが表示されます。

ならばと、直接gem install nokogiriを実行すると、下記のエラーメッセージが表示されます。

lang

1[usr@XXXX app]$ sudo gem install nokogiri 2 3Building native extensions. This could take a while... 4ERROR: Error installing nokogiri: 5 ERROR: Failed to build gem native extension. 6 7 /usr/local/rbenv/versions/2.1.2/bin/ruby -r ./siteconf20141228-3955-13ftcn7.rb extconf.rb 8checking if the C compiler accepts ... yes 9Building nokogiri using packaged libraries. 10checking for iconv... yes 11************************************************************************ 12IMPORTANT NOTICE: 13 14Buidling Nokogiri with a packaged version of libxml2-2.9.2 15with the following patches applied: 16 - 0001-Revert-Missing-initialization-for-the-catalog-module.patch 17 - 0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch 18 19Team Nokogiri will keep on doing their best to provide security 20updates in a timely manner, but if this is a concern for you and want 21to use the system library instead; abort this installation process and 22reinstall nokogiri as follows: 23 24 gem install nokogiri -- --use-system-libraries 25 [--with-xml2-config=/path/to/xml2-config] 26 [--with-xslt-config=/path/to/xslt-config] 27 28If you are using Bundler, tell it to use the option: 29 30 bundle config build.nokogiri --use-system-libraries 31 bundle install 32 33Note, however, that nokogiri is not fully compatible with arbitrary 34versions of libxml2 provided by OS/package vendors. 35************************************************************************ 36(以下、省略)

libxml2、libxml2-devel、libxslt、libxslt-develをyumでインストールして、gem install nokogiri -- --use-system-librariesをすると、これは成功します。一方で、gem install nokogiriは通らないままです。

いろいろな記事を見ていると、nokogoriのインストール時に、systemのlibxml2を使うように指示をすればよいということでしたので、Gemfileに下記を加えたのですが、やはり上手くいきません。

lang

1 2source 'https://rubygems.org' 3 4ENV['NOKOGIRI_USE_SYSTEM_LIBRARIES'] = 'YES' 5gem 'nokogiri', '1.6.5'

どうぞ、よろしくお願いします。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ネットワークのエラーであるならば:ミラーサーバを指定してあげることで回避した事例があるようですね

投稿2014/12/28 14:22

gouf

総合スコア2321

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mendosa

2014/12/29 00:16

ありがとうございます。無事に解決できました。 こんなこともあるのですね。勉強になりました。ありがとうございました。
guest

0

ベストアンサー

自分もgemを使おうとすると同様のエラーが吐かれてしまいます。

[vagrant@localhost ~]$ gem install rake ERROR: Could not find a valid gem 'rake' (>= 0), here is why: Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT: Connection timed out - connect(2) for "au-m.rubygems.org" port 443 (https://api.rubygems.org/quick/Marshal.4.8/rake-10.4.2.gemspec.rz) ERROR: Possible alternatives: rake

色々調べてみましたが、単純にau-m.rubygems.orgのサーバが落ちてしまってるようです。
時間が解決してくれるかも?

投稿2014/12/28 12:17

xoqpunos

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mendosa

2014/12/29 00:14

ありがとうございます。ご指摘の通り、単純にサーバーが落ちていたようです。 本日、実行したら無事に上手くいきました。 このままだと訳が分からないままでしたので、勉強になりました。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問