El Capitanにpumaを入れる

ruby_gems.jpg

最近、Railsチュートリアル2周目やってたんですが
「2周目はさすがに理解が深まりますー!!」
と思ってノリノリで進めてた所、8章で衰弱死しそうになりました。
まだまだだなぁ・・と。

ところで、7.5.2でproduction環境にpumaを入れる必要が発生したのですが、
自分のMacOS X ElCapitanでErrorが出ました。
(Cloud9を使ってる人は別につまづかないのかも)。

その時出たエラー

installing puma 2.11.1 with native extensions

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    /Users/iseebi/.rbenv/versions/2.1.5/bin/ruby extconf.rb --with-cppflags=-I/usr/local/opt/openssl/include
checking for BIO_read() in -lcrypto... no
checking for BIO_read() in -llibeay32... 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=/Users/iseebi/.rbenv/versions/2.1.5/bin/ruby
    --with-puma_http11-dir
    --without-puma_http11-dir
    --with-puma_http11-include
    --without-puma_http11-include=${puma_http11-dir}/include
    --with-puma_http11-lib
    --without-puma_http11-lib=${puma_http11-dir}/lib
    --with-cryptolib
    --without-cryptolib
    --with-libeay32lib
    --without-libeay32lib

extconf failed, exit code 1

gemインストール時に、openssl周りのオプションを指定しないとダメだそう。
けどトーシロ過ぎて、自分では上のエラー内容からそんなんだって一ミリも予測できませんでした。

gem install puma — –with-cppflags=-I/usr/local/opt/openssl/include –with-ldflags=-L/usr/local/opt/openssl/lib

参考)https://gist.github.com/edvinasbartkus/0e99ea8305a20737f562

自分の環境ではbundlerで管理しているので

bundle config build.puma –with-cppflags=-I/usr/local/opt/openssl/include –with-ldflags=-L/usr/local/opt/openssl/lib

と、設定。

ちなみにこれは~/.bundle/config に記録されますね。

とこでCloud9まじですごいですね。
よく、あんなん作ろうって発想になりますよね。

おわり!(゚∀゚)

 



関連記事

Comment





Comment



*