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

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

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

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

Ruby

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

Q&A

解決済

1回答

444閲覧

Rails5でacts-as-taggable-onを使用するとエラーが出る

qazwsx_15

総合スコア10

Ruby on Rails 5

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

Ruby

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

0グッド

0クリップ

投稿2018/01/27 12:40

#発生している問題
Ruby on Rails5でacts-as-taggable-onを使用するためGemfileに

Ruby

1gem 'acts-as-taggable-on', github: 'mbleigh/acts-as-taggable-on', branch: 'master'

を追加し、bundle installする。その後

rake acts_as_taggable_on_engine:install:migrations

を行うところまでは正常に動作します。しかしその次に

rails db:migrate

を行うと

LoadError: 126: 指定されたモジュールが見つかりません。 - C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/rmagick-2.16.0/lib/RMagick2.so D:/Collection/config/application.rb:7:in `<top (required)>' D:/Collection/Rakefile:4:in `require_relative' D:/Collection/Rakefile:4:in `<top (required)>' bin/rails:4:in `require' bin/rails:4:in `<main>' (See full trace by running task with --trace)

と出てしまい、マイグレーションができません。gemの中にある

Ruby

1gem 'rmagick', :require => 'RMagick'

を削除すると正しく動くのですがRMagickも使用しているため削除はしたくありません。

Rubyのバージョンをアップデートした際の rmagick-2.15.2/RMagick2.so (LoadError)
の方法も試してみたのですがダメでした。
どうすればこの2つを併用し、エラーなしでmigrateできるのでしょうか。

#環境
Windows 10 Pro version1709
Ruby 2.4.3p205 (2017-12-14 revision 61247) [x64-mingw32]
Rails 5.1.4

#Gemfile

Ruby

1source 'https://rubygems.org' 2 3git_source(:github) do |repo_name| 4 repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") 5 "https://github.com/#{repo_name}.git" 6end 7 8 9# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 10gem 'rails', '~> 5.1.4' 11# Use sqlite3 as the database for Active Record 12gem 'sqlite3' 13# Use Puma as the app server 14gem 'puma', '~> 3.7' 15# Use SCSS for stylesheets 16gem 'sass-rails', '~> 5.0' 17# Use Uglifier as compressor for JavaScript assets 18gem 'uglifier', '>= 1.3.0' 19# See https://github.com/rails/execjs#readme for more supported runtimes 20# gem 'therubyracer', platforms: :ruby 21 22# Use CoffeeScript for .coffee assets and views 23gem 'coffee-rails', '~> 4.2' 24# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks 25gem 'turbolinks', '~> 5' 26# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder 27gem 'jbuilder', '~> 2.5' 28# Use Redis adapter to run Action Cable in production 29# gem 'redis', '~> 3.0' 30# Use ActiveModel has_secure_password 31# gem 'bcrypt', '~> 3.1.7' 32 33# Use Capistrano for deployment 34# gem 'capistrano-rails', group: :development 35 36group :development, :test do 37 # Call 'byebug' anywhere in the code to stop execution and get a debugger console 38 gem 'byebug', platforms: [:mri, :mingw, :x64_mingw] 39 # Adds support for Capybara system testing and selenium driver 40 gem 'capybara', '~> 2.13' 41 gem 'selenium-webdriver' 42end 43 44group :development do 45 # Access an IRB console on exception pages or by using <%= console %> anywhere in the code. 46 gem 'web-console', '>= 3.3.0' 47end 48 49# Windows does not include zoneinfo files, so bundle the tzinfo-data gem 50gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] 51 52#ユーザー認証用 53gem 'devise' 54gem 'omniauth' 55gem 'omniauth-twitter' 56 57#画像アップロード 58gem 'carrierwave' 59gem 'mini_magick' 60gem 'rmagick', :require => 'RMagick' 61 62gem 'acts-as-taggable-on', github: 'mbleigh/acts-as-taggable-on', branch: 'master'

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

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

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

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

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

guest

回答1

0

ベストアンサー

本件はおそらく acts-as-taggable-on はまったく無関係で,エラーの原因は RMagick が正しくインストールできてないだけだと思います。

ためしに(Rails のことは忘れて)irb か何かで

rb

1require "rmagick"

とやってみてください。同じようなエラーが出ますよね?

RMagick はインストールが難しい gem の一つです。
ポイントは ImageMagick がインストールされていることですが,RMagick は ImageMagick の最新版(バージョン 7 系)には対応しないため,バージョン 6 系をインストールしなければならないこと(だそう)です。

私は Windows で RMagick をインストールしたことはあるのですが,あまりこの問題に詳しくありません。ImageMagick の 6 系をインストールしただけで解決しないようであれば,「Windows に RMagick がインストールできない」で調べるか新たな質問を立てられるとよいのでは,と思います。

あるいは,RMagick の代わりに minimagick を使うのもいいかもしれません。こちらのほうがインストールが(やや)簡単だと何かで読んだ気がします。
minimagick は RMagick と同じ目的の gem で,ImageMagick を Ruby から扱うものです。RMagick よりメモリー使用量がかなり少ないとのこと。

投稿2018/01/27 21:54

scivola

総合スコア2108

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

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

qazwsx_15

2018/01/29 08:37

irbにてrequire "rmagick"と入力するとtrueと出てきます。 minimagickのインストールがうまくいかずImageMagick6系を入れRMagickを利用することで画像のリサイズがうまくできていたので正常にRMagickがインストールできているものだと思っていましたが何かおかしいとことがあるのかもしれません。一度再インストールしてみます。
qazwsx_15

2018/01/29 12:58

minimagickを再インストールし、使用することで回避できました。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問