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

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

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

rbenvは、Rubyバージョン管理ツール。プロジェクトごとでRubyバージョンを切り替えることが可能です。RVMよりもシンプルで、少ない機能で動作します。本体にはRubyのビルド機能は備わっておらず、ruby-buildというツールを用いる必要があります。

Ruby

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

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Ruby on Rails

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

Q&A

1回答

3881閲覧

mailcatcherがインストールできない

onekoro

総合スコア1

rbenv

rbenvは、Rubyバージョン管理ツール。プロジェクトごとでRubyバージョンを切り替えることが可能です。RVMよりもシンプルで、少ない機能で動作します。本体にはRubyのビルド機能は備わっておらず、ruby-buildというツールを用いる必要があります。

Ruby

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

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Ruby on Rails

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

0グッド

1クリップ

投稿2020/09/22 09:11

編集2020/09/22 12:56

「現場で使える ruby on rails 5速習実践ガイド」にてRailsを勉強中のものです.

7章でメールの送信を行うためにmailcatcherをインストールする必要があるのですが,エラーが出てしまいインストールできません.
ターミナルのログには「error: implicit declaration of function 'thin_http_parser_has_error' is invalid in C99」という記述があるののですが,どうすれば解決するのかわかりません.

是非お力添えをしていただければ幸いです.

※MacOSおよびrbenvを使用しております.

以下ターミナルのログ

isshikijun@isshikijunnoMacBook-Air ~ % sudo gem install mailcatcher Building native extensions. This could take a while... ERROR: Error installing mailcatcher: ERROR: Failed to build gem native extension. current directory: /Users/isshikijun/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/thin-1.5.1/ext/thin_parser /Users/isshikijun/.rbenv/versions/2.5.1/bin/ruby -I /Users/isshikijun/.rbenv/versions/2.5.1/lib/ruby/site_ruby/2.5.0 -r ./siteconf20200922-4509-1tjww7p.rb extconf.rb checking for main() in -lc... yes creating Makefile current directory: /Users/isshikijun/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/thin-1.5.1/ext/thin_parser make "DESTDIR=" clean current directory: /Users/isshikijun/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/thin-1.5.1/ext/thin_parser make "DESTDIR=" compiling parser.c parser.rl:112:17: warning: comparison of integers of different signs: 'long' and 'unsigned long' [-Wsign-compare] assert(pe - p == len - off && "pointers aren't same distance"); ~~~~~~ ^ ~~~~~~~~~ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h:93:25: note: expanded from macro 'assert' (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __FILE__, __LINE__, #e) : (void)0) ^ parser.rl:142:7: error: implicit declaration of function 'thin_http_parser_has_error' is invalid in C99 [-Werror,-Wimplicit-function-declaration] if (thin_http_parser_has_error(parser) ) { ^ parser.rl:142:7: note: did you mean 'http_parser_has_error'? ./parser.h:44:5: note: 'http_parser_has_error' declared here int http_parser_has_error(http_parser *parser); ^ parser.rl:144:14: error: implicit declaration of function 'thin_http_parser_is_finished' is invalid in C99 [-Werror,-Wimplicit-function-declaration] } else if (thin_http_parser_is_finished(parser) ) { ^ 1 warning and 2 errors generated. make: *** [parser.o] Error 1 make failed, exit code 2 Gem files will remain installed in /Users/isshikijun/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/thin-1.5.1 for inspection. Results logged to /Users/isshikijun/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/extensions/x86_64-darwin-19/2.5.0/thin-1.5.1/gem_make.out

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

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

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

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

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

gouf

2020/09/22 11:46

お使いの環境は Windows ですか? Mac ですか? docker 環境の Ruby Ver. 2.7.1 で Mailcatcher がインストールできることを確認しました 可能であれば VirtualBox などの仮想環境内での開発に (一時的に) 移行すれば、問題を回避できるかもしれません --- MailCatcher gem は 現在、v0.8.0.beta2 がリリースされ開発中です : https://github.com/sj26/mailcatcher/releases/tag/v0.8.0.beta2 正式版が登場すれば、諸問題も解決されているかもしれません
onekoro

2020/09/22 12:53

回答ありがとうございます. 使用している環境はMacです. また,rbenvを使用しております. なるほど,dockerならインストールができるのですね. もう少し調べて,現在の環境でのインストールができそうにないなら仮想環境を使用した開発に移行してみようと思います.
guest

回答1

0

gem install thin -v '1.5.1' -- --with-cflags="-Wno-error=implicit-function-declaration"

してから

gem install mailcatcherでどうでしょうか?

参考

投稿2020/10/14 00:22

hiroysato

総合スコア415

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問