LoginSignup
6
4

More than 3 years have passed since last update.

bundle installでエラーが出て、pumaがインストールできない。

Posted at

発生するエラー

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

current directory:
/Users/yohei-yokota/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/puma-4.3.3/ext/puma_http11
/Users/yohei-yokota/.rbenv/versions/2.6.1/bin/ruby -I
/Users/yohei-yokota/.rbenv/versions/2.6.1/lib/ruby/2.6.0 -r
./siteconf20200920-91266-1229hke.rb extconf.rb
checking for BIO_read() in -lcrypto... yes
checking for SSL_CTX_new() in -lssl... yes
checking for openssl/bio.h... yes
checking for DTLS_method() in openssl/ssl.h... yes
checking for TLS_server_method() in openssl/ssl.h... yes
checking for SSL_CTX_set_min_proto_version in openssl/ssl.h... yes
creating Makefile

current directory:
/Users/yohei-yokota/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/puma-4.3.3/ext/puma_http11
make "DESTDIR=" clean

current directory:
/Users/yohei-yokota/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/puma-4.3.3/ext/puma_http11
make "DESTDIR="
compiling http11_parser.c
ext/puma_http11/http11_parser.c:44:18: warning: unused variable
'puma_parser_en_main' [-Wunused-const-variable]
static const int puma_parser_en_main = 1;
                 ^
1 warning generated.
compiling io_buffer.c
compiling mini_ssl.c
mini_ssl.c:145:7: warning: unused variable 'min' [-Wunused-variable]
  int min, ssl_options;
      ^
mini_ssl.c:299:40: warning: function 'raise_error' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
void raise_error(SSL* ssl, int result) {
                                       ^
2 warnings generated.
compiling puma_http11.c
puma_http11.c:203:22: error: implicitly declaring library function 'isspace'
with type 'int (int)' [-Werror,-Wimplicit-function-declaration]
  while (vlen > 0 && isspace(value[vlen - 1])) vlen--;
                     ^
puma_http11.c:203:22: note: include the header <ctype.h> or explicitly provide a
declaration for 'isspace'
1 error generated.
make: *** [puma_http11.o] Error 1

make failed, exit code 2

Gem files will remain installed in
/Users/yohei-yokota/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/puma-4.3.3
for inspection.
Results logged to
/Users/yohei-yokota/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/extensions/x86_64-darwin-19/2.6.0/puma-4.3.3/gem_make.out

An error occurred while installing puma (4.3.3), and Bundler cannot
continue.
Make sure that `gem install puma -v '4.3.3' --source 'https://rubygems.org/'`
succeeds before bundling.

In Gemfile:
  puma

puma v4.2.1では発生せず、v4.3.0以降で発生するらしい。

下記のコマンドを実行したところいけました。

$ gem install puma:4.3.3 -- --with-cflags="-Wno-error=implicit-function-declaration"

参考リンク

https://github.com/puma/puma/issues/2342
https://github.com/puma/puma/issues/2304

6
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
4