PG_T
@PG_T (蔵之浦 果実)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

AWS Cloud9 rubyのバージョンを下げたい

解決したいこと

AWS Cloud9でのrubyのバージョンを下げたいです。

現在のバージョン
ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-linux]

こちらを2.6.3に下げようとしたところ、下記のようにエラーとなり、できませんでした。

ec2-user:~/environment $ rvm install 2.6.3
ruby-2.6.3 - #removing src/ruby-2.6.3..
Searching for binary rubies, this might take some time.
No binary rubies available for: amazon/2023/x86_64/ruby-2.6.3.
Checking requirements for amazon.
Requirements installation successful.
Installing Ruby from source to: /home/ec2-user/.rvm/rubies/ruby-2.6.3, this may take a while depending on your cpu(s)...
ruby-2.6.3 - #downloading ruby-2.6.3, this may take a while depending on your connection...ruby-2.6.3 - #extracting ruby-2.6.3 to /home/ec2-user/.rvm/src/ruby-2.6.3.....  ruby-2.6.3 - #configuring.......................................................................
ruby-2.6.3 - #post-configuration..
ruby-2.6.3 - #compiling.............../                          .................................................................................................................................
Error running '__rvm_make -j1',
please read /home/ec2-user/.rvm/log/1708762037_ruby-2.6.3/make.log

There has been an error while running make. Halting the installation.

ここで示されたログ(make.log)は下記のとおりです。

[2024-02-24 08:08:02] __rvm_make
__rvm_make () 
{ 
    \make "$@" || return $?
}
current path: /home/ec2-user/.rvm/src/ruby-2.6.3
GEM_HOME=/home/ec2-user/.local/share/gem/ruby
PATH=/home/ec2-user/.nvm/versions/node/v20.11.1/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ec2-user/.local/bin:/home/ec2-user/bin:/usr/local/bin:/home/ec2-user/.rvm/bin:/home/ec2-user/.local/bin:/home/ec2-user/bin:/usr/local/bin:/home/ec2-user/.rvm/bin:/home/ec2-user/.local/bin:/home/ec2-user/bin:/usr/local/bin:/home/ec2-user/.rvm/bin
command(2): __rvm_make -j1
++ make -j1
	BASERUBY = /usr/bin/ruby --disable=gems
	CC = gcc
	LD = ld
	LDSHARED = gcc -shared
	CFLAGS = -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -std=gnu99  -fPIC 
	XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fno-strict-overflow -fvisibility=hidden -fexcess-precision=standard -DRUBY_EXPORT -DCANONICALIZATION_FOR_MATHN
	CPPFLAGS =   -I. -I.ext/include/x86_64-linux -I./include -I. -I./enc/unicode/12.1.0 
	DLDFLAGS = -Wl,--compress-debug-sections=zlib -Wl,-soname,libruby.so.2.6  -fstack-protector-strong  
	SOLIBS = -lz -lpthread -lrt -lrt -ldl -lcrypt -lm 
	LANG = C.UTF-8
	LC_ALL = 
	LC_CTYPE = 
gcc (GCC) 11.4.1 20230605 (Red Hat 11.4.1-2)
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

compiling ./main.c
compiling dmydln.c
compiling miniinit.c
compiling dmyext.c
compiling miniprelude.c
translating probes probes.d
compiling array.c
compiling ast.c
compiling bignum.c
compiling class.c
In file included from ./include/ruby.h:33,
                 from internal.h:15,
                 from class.c:26:
class.c: In function ‘move_refined_method’:
class.c:955:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  955 |             RB_OBJ_WRITE(me, &me->def->body.refined.orig_me, NULL);
./include/ruby/ruby.h:1493:75: note: in definition of macro ‘RB_OBJ_WRITE’
 1493 | #define RB_OBJ_WRITE(a, slot, b)       rb_obj_write((VALUE)(a), (VALUE *)(slot), (VALUE)(b), __FILE__, __LINE__)
      |                                                                           ^~~~
class.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling compar.c
compiling compile.c
compile.c: In function ‘update_catch_except_flags’:
compile.c:1291:54: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 1291 |         const struct iseq_catch_table_entry *entry = &ct->entries[i];
      |                                                      ^~~~~~~~~~~~~~~
compile.c: In function ‘iseq_set_exception_table’:
compile.c:2356:21: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2356 |             entry = &table->entries[i];
      |                     ^~~~~~~~~~~~~~~~~~
compile.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling complex.c
compiling cont.c
compiling debug.c
compiling debug_counter.c
compiling dir.c
compiling dln_find.c
compiling encoding.c
compiling enum.c
compiling enumerator.c
compiling error.c
compiling eval.c
compiling file.c
compiling gc.c
gc.c: In function ‘mark_current_machine_context’:
gc.c:4374:36: warning: expression does not compute the number of elements in this array; element type is ‘struct __jmp_buf_tag’, not ‘VALUE’ {aka ‘long unsigned int’} [-Wsizeof-array-div]
 4374 |         VALUE v[sizeof(rb_jmp_buf) / sizeof(VALUE)];
      |                                    ^
gc.c:4374:36: note: add parentheses around the second ‘sizeof’ to silence this warning
gc.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling hash.c
compiling inits.c
compiling io.c
io.c: In function ‘rb_io_ungetbyte’:
io.c:4272:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 4272 |         VALUE v = rb_int_modulo(b, INT2FIX(256));
      |         ^~~~~
io.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling iseq.c
iseq.c: In function ‘rb_iseq_mark’:
iseq.c:252:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  252 |                 entry = &table->entries[i];
      |                         ^~~~~~~~~~~~~~~~~~
iseq.c: In function ‘rb_iseq_disasm_recursive’:
iseq.c:2067:58: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2067 |             const struct iseq_catch_table_entry *entry = &body->catch_table->entries[i];
      |                                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
iseq.c: In function ‘iseq_iterate_children’:
iseq.c:2200:58: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2200 |             const struct iseq_catch_table_entry *entry = &body->catch_table->entries[i];
      |                                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
iseq.c: In function ‘iseq_data_to_ary’:
iseq.c:2710:54: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2710 |         const struct iseq_catch_table_entry *entry = &iseq_body->catch_table->entries[i];
      |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
iseq.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling load.c
compiling marshal.c
compiling math.c
making mjit_config.h
compiling mjit.c
compiling mjit_compile.c
compiling node.c
compiling numeric.c
compiling object.c
compiling pack.c
compiling parse.c
compiling proc.c
compiling process.c
compiling random.c
compiling range.c
compiling rational.c
compiling re.c
compiling regcomp.c
compiling regenc.c
compiling regerror.c
compiling regexec.c
compiling regparse.c
compiling regsyntax.c
compiling ruby.c
compiling safe.c
compiling signal.c
compiling sprintf.c
compiling st.c
compiling strftime.c
strftime.c: In function ‘rb_strftime_with_timespec’:
strftime.c:386:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]
  386 |                         if (vtm->wday < 0 || vtm->wday > 6)
      |                                       ^
strftime.c:397:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]
  397 |                         if (vtm->wday < 0 || vtm->wday > 6)
      |                                       ^
strftime.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling string.c
string.c: In function ‘rb_str_setbyte’:
string.c:5426:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 5426 |     VALUE v = rb_to_int(value);
      |     ^~~~~
string.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling struct.c
compiling symbol.c
compiling thread.c
In file included from thread.c:68:
thread_sync.c: In function ‘queue_alloc’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:541:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  541 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
      |                        ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:586:20: note: in expansion of macro ‘queue_waitq’
  586 |     list_head_init(queue_waitq(q));
      |                    ^~~~~~~~~~~
thread_sync.c: In function ‘queue_fork_check’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:541:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  541 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
      |                        ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:600:20: note: in expansion of macro ‘queue_waitq’
  600 |     list_head_init(queue_waitq(q));
      |                    ^~~~~~~~~~~
thread_sync.c: In function ‘szqueue_alloc’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:549:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  549 | #define szqueue_waitq(sq) UNALIGNED_MEMBER_PTR(sq, q.waitq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:644:20: note: in expansion of macro ‘szqueue_waitq’
  644 |     list_head_init(szqueue_waitq(sq));
      |                    ^~~~~~~~~~~~~
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:645:20: note: in expansion of macro ‘szqueue_pushq’
  645 |     list_head_init(szqueue_pushq(sq));
      |                    ^~~~~~~~~~~~~
thread_sync.c: In function ‘szqueue_ptr’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:656:24: note: in expansion of macro ‘szqueue_pushq’
  656 |         list_head_init(szqueue_pushq(sq));
      |                        ^~~~~~~~~~~~~
thread_sync.c: In function ‘rb_queue_initialize’:
thread_sync.c:757:24: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  757 |     RB_OBJ_WRITE(self, &q->que, ary_buf_new());
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:757:5: note: in expansion of macro ‘RB_OBJ_WRITE’
  757 |     RB_OBJ_WRITE(self, &q->que, ary_buf_new());
      |     ^~~~~~~~~~~~
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:541:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  541 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
      |                        ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:758:20: note: in expansion of macro ‘queue_waitq’
  758 |     list_head_init(queue_waitq(q));
      |                    ^~~~~~~~~~~
thread_sync.c: In function ‘queue_do_push’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:541:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  541 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
      |                        ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:769:16: note: in expansion of macro ‘queue_waitq’
  769 |     wakeup_one(queue_waitq(q));
      |                ^~~~~~~~~~~
thread_sync.c: In function ‘rb_queue_close’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:541:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  541 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
      |                        ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:814:20: note: in expansion of macro ‘queue_waitq’
  814 |         wakeup_all(queue_waitq(q));
      |                    ^~~~~~~~~~~
In file included from vm_core.h:77,
                 from eval_intern.h:5,
                 from thread.c:68:
thread_sync.c: In function ‘queue_do_pop’:
thread_sync.c:906:27: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  906 |             list_add_tail(&qw.as.q->waitq, &qw.w.node);
      |                           ^~~~~~~~~~~~~~~
ccan/list/list.h:195:44: note: in definition of macro ‘list_add_tail’
  195 | #define list_add_tail(h, n) list_add_tail_(h, n, LIST_LOC)
      |                                            ^
In file included from thread.c:68:
thread_sync.c: In function ‘rb_szqueue_initialize’:
thread_sync.c:1032:24: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 1032 |     RB_OBJ_WRITE(self, &sq->q.que, ary_buf_new());
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:1032:5: note: in expansion of macro ‘RB_OBJ_WRITE’
 1032 |     RB_OBJ_WRITE(self, &sq->q.que, ary_buf_new());
      |     ^~~~~~~~~~~~
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:549:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  549 | #define szqueue_waitq(sq) UNALIGNED_MEMBER_PTR(sq, q.waitq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1033:20: note: in expansion of macro ‘szqueue_waitq’
 1033 |     list_head_init(szqueue_waitq(sq));
      |                    ^~~~~~~~~~~~~
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1034:20: note: in expansion of macro ‘szqueue_pushq’
 1034 |     list_head_init(szqueue_pushq(sq));
      |                    ^~~~~~~~~~~~~
thread_sync.c: In function ‘rb_szqueue_close’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:549:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  549 | #define szqueue_waitq(sq) UNALIGNED_MEMBER_PTR(sq, q.waitq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1059:20: note: in expansion of macro ‘szqueue_waitq’
 1059 |         wakeup_all(szqueue_waitq(sq));
      |                    ^~~~~~~~~~~~~
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1060:20: note: in expansion of macro ‘szqueue_pushq’
 1060 |         wakeup_all(szqueue_pushq(sq));
      |                    ^~~~~~~~~~~~~
thread_sync.c: In function ‘rb_szqueue_max_set’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1098:17: note: in expansion of macro ‘szqueue_pushq’
 1098 |     sync_wakeup(szqueue_pushq(sq), diff);
      |                 ^~~~~~~~~~~~~
thread_sync.c: In function ‘rb_szqueue_push’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1142:39: note: in expansion of macro ‘szqueue_pushq’
 1142 |             struct list_head *pushq = szqueue_pushq(sq);
      |                                       ^~~~~~~~~~~~~
thread_sync.c: In function ‘szqueue_do_pop’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1168:20: note: in expansion of macro ‘szqueue_pushq’
 1168 |         wakeup_one(szqueue_pushq(sq));
      |                    ^~~~~~~~~~~~~
thread_sync.c: In function ‘rb_szqueue_clear’:
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
thread_sync.c:550:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  550 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
      |                           ^~~~~~~~~~~~~~~~~~~~
thread_sync.c:1207:16: note: in expansion of macro ‘szqueue_pushq’
 1207 |     wakeup_all(szqueue_pushq(sq));
      |                ^~~~~~~~~~~~~
thread.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling time.c
compiling transcode.c
compiling transient_heap.c
compiling util.c
compiling variable.c
./revision.h unchanged
compiling version.c
compiling vm.c
In file included from vm.c:320:
vm_insnhelper.c: In function ‘vm_throw_start’:
vm_insnhelper.c:1135:77: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 1135 |                         const struct iseq_catch_table_entry * const entry = &ct->entries[i];
      |                                                                             ^~~~~~~~~~~~~~~
In file included from vm.c:320:
vm_insnhelper.c: In function ‘vm_method_cfunc_entry’:
vm_insnhelper.c:1883:12: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 1883 |     return &me->def->body.cfunc;
      |            ^~~~~~~~~~~~~~~~~~~~
In file included from vm.c:21:
vm_insnhelper.c: In function ‘aliased_callable_method_entry’:
vm_insnhelper.c:2195:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2195 |             RB_OBJ_WRITE(me, &me->def->body.alias.original_me, cme);
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_insnhelper.c:2195:13: note: in expansion of macro ‘RB_OBJ_WRITE’
 2195 |             RB_OBJ_WRITE(me, &me->def->body.alias.original_me, cme);
      |             ^~~~~~~~~~~~
vm_method.c: In function ‘rb_method_definition_set’:
vm_method.c:241:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  241 |                 RB_OBJ_WRITE(me, &def->body.iseq.iseqptr, iseq_body->iseqptr);
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:241:17: note: in expansion of macro ‘RB_OBJ_WRITE’
  241 |                 RB_OBJ_WRITE(me, &def->body.iseq.iseqptr, iseq_body->iseqptr);
      |                 ^~~~~~~~~~~~
vm_method.c:252:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  252 |                 RB_OBJ_WRITE(me, &def->body.iseq.cref, method_cref);
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:252:17: note: in expansion of macro ‘RB_OBJ_WRITE’
  252 |                 RB_OBJ_WRITE(me, &def->body.iseq.cref, method_cref);
      |                 ^~~~~~~~~~~~
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:258:43: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  258 |                 setup_method_cfunc_struct(UNALIGNED_MEMBER_PTR(def, body.cfunc), cfunc->func, cfunc->argc);
      |                                           ^~~~~~~~~~~~~~~~~~~~
vm_method.c:274:38: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  274 |                     RB_OBJ_WRITE(me, &def->body.attr.location, rb_ary_freeze(location));
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:274:21: note: in expansion of macro ‘RB_OBJ_WRITE’
  274 |                     RB_OBJ_WRITE(me, &def->body.attr.location, rb_ary_freeze(location));
      |                     ^~~~~~~~~~~~
vm_method.c:282:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  282 |             RB_OBJ_WRITE(me, &def->body.bmethod.proc, (VALUE)opts);
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:282:13: note: in expansion of macro ‘RB_OBJ_WRITE’
  282 |             RB_OBJ_WRITE(me, &def->body.bmethod.proc, (VALUE)opts);
      |             ^~~~~~~~~~~~
eval_intern.h:172:64: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  172 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:285:39: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
  285 |             setup_method_cfunc_struct(UNALIGNED_MEMBER_PTR(def, body.cfunc), rb_f_notimplement, -1);
      |                                       ^~~~~~~~~~~~~~~~~~~~
vm_method.c:293:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  293 |                 RB_OBJ_WRITE(me, &def->body.refined.orig_me, refined->orig_me);
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:293:17: note: in expansion of macro ‘RB_OBJ_WRITE’
  293 |                 RB_OBJ_WRITE(me, &def->body.refined.orig_me, refined->orig_me);
      |                 ^~~~~~~~~~~~
vm_method.c:294:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  294 |                 RB_OBJ_WRITE(me, &def->body.refined.owner, refined->owner);
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:294:17: note: in expansion of macro ‘RB_OBJ_WRITE’
  294 |                 RB_OBJ_WRITE(me, &def->body.refined.owner, refined->owner);
      |                 ^~~~~~~~~~~~
vm_method.c:298:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
  298 |             RB_OBJ_WRITE(me, &def->body.alias.original_me, (rb_method_entry_t *)opts);
eval_intern.h:170:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
  170 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
      |                                        ^~~~
vm_method.c:298:13: note: in expansion of macro ‘RB_OBJ_WRITE’
  298 |             RB_OBJ_WRITE(me, &def->body.alias.original_me, (rb_method_entry_t *)opts);
      |             ^~~~~~~~~~~~
In file included from vm.c:328:
vm_eval.c: In function ‘vm_call0_cfunc_with_frame’:
vm_eval.c:68:38: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
   68 |     const rb_method_cfunc_t *cfunc = &me->def->body.cfunc;
      |                                      ^~~~~~~~~~~~~~~~~~~~
vm.c: In function ‘vm_exec_handle_exception’:
vm.c:1954:37: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 1954 |                             entry = &ct->entries[i];
      |                                     ^~~~~~~~~~~~~~~
vm.c:1990:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 1990 |                 entry = &ct->entries[i];
      |                         ^~~~~~~~~~~~~~~
vm.c:2006:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2006 |                 entry = &ct->entries[i];
      |                         ^~~~~~~~~~~~~~~
vm.c:2033:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2033 |                 entry = &ct->entries[i];
      |                         ^~~~~~~~~~~~~~~
vm.c:2071:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
 2071 |                 entry = &ct->entries[i];
      |                         ^~~~~~~~~~~~~~~
vm.c: In function ‘check_machine_stack_size’:
vm.c:2363:14: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
 2363 |     if (size < PTHREAD_STACK_MIN) {
      |              ^
vm.c: In function ‘rb_execution_context_mark’:
vm.c:2486:55: warning: expression does not compute the number of elements in this array; element type is ‘const struct __jmp_buf_tag’, not ‘VALUE’ {aka ‘long unsigned int’} [-Wsizeof-array-div]
 2486 |                              sizeof(ec->machine.regs) / sizeof(VALUE));
      |                                                       ^
vm.c:2486:55: note: add parentheses around the second ‘sizeof’ to silence this warning
vm.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling vm_backtrace.c
compiling vm_dump.c
compiling vm_trace.c
assembling coroutine/amd64/Context.S
processing probes in object files
compiling enc/ascii.c
compiling enc/us_ascii.c
compiling enc/unicode.c
enc/unicode.c: In function ‘onigenc_unicode_get_case_fold_codes_by_str’:
enc/unicode.c:557:28: warning: ‘ncs’ may be used uninitialized [-Wmaybe-uninitialized]
  557 |         for (i = 0; i < ncs[0]; i++) {
      |                         ~~~^~~
enc/unicode.c:519:15: note: ‘ncs’ declared here
  519 |       int fn, ncs[3];
      |               ^~~
enc/unicode.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
compiling enc/utf_8.c
compiling enc/trans/newline.c
compiling ./missing/setproctitle.c
compiling ./missing/strlcat.c
compiling ./missing/strlcpy.c
compiling addr2line.c
compiling dmyenc.c
linking miniruby
generating encdb.h
encdb.h updated
./tool/ifchange "--timestamp=.rbconfig.time" rbconfig.rb rbconfig.tmp
rbconfig.rb updated
generating enc.mk
making srcs under enc
make[1]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3'
make[1]: Nothing to be done for 'srcs'.
make[1]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3'
generating transdb.h
transdb.h updated
compiling dln.c
compiling localeinit.c
creating verconf.h
verconf.h updated
compiling loadpath.c
compiling prelude.c
linking static-library libruby-static.a
linking shared-library libruby.so.2.6.3
generating makefiles ext/configure-ext.mk
ext/configure-ext.mk updated
make[1]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3'
configuring pathname
configuring stringio
configuring ripper
configuring dbm
configuring fcntl
configuring io/console
configuring io/nonblock
configuring io/wait
configuring racc/cparse
configuring gdbm
configuring etc
configuring strscan
configuring digest
configuring digest/bubblebabble
configuring digest/md5
configuring digest/rmd160
configuring digest/sha1
configuring digest/sha2
configuring syslog
configuring bigdecimal
configuring bigdecimal/util
configuring sdbm
configuring objspace
configuring fiber
configuring rbconfig/sizeof
configuring coverage
configuring zlib
configuring cgi/escape
configuring json
configuring json/generator
configuring json/parser
configuring -test-/arith_seq/extract
configuring -test-/array/resize
configuring -test-/bignum
configuring -test-/bug-3571
configuring -test-/bug-5832
configuring -test-/bug_reporter
configuring -test-/class
configuring -test-/debug
configuring -test-/dln/empty
configuring -test-/exception
configuring -test-/fatal
configuring -test-/file
configuring -test-/float
configuring -test-/funcall
configuring -test-/gvl/call_without_gvl
configuring -test-/hash
configuring -test-/integer
configuring -test-/iseq_load
configuring -test-/iter
configuring -test-/load/dot.dot
configuring -test-/load/protect
configuring -test-/marshal/compat
configuring -test-/marshal/internal_ivar
configuring -test-/marshal/usr
configuring -test-/memory_status
configuring -test-/method
configuring -test-/notimplement
configuring -test-/num2int
configuring -test-/path_to_class
configuring -test-/popen_deadlock
configuring -test-/postponed_job
configuring -test-/printf
configuring -test-/proc
configuring -test-/rational
configuring -test-/recursion
configuring -test-/regexp
configuring -test-/scan_args
configuring -test-/st/foreach
configuring -test-/st/numhash
configuring -test-/st/update
configuring -test-/string
configuring -test-/struct
configuring -test-/symbol
configuring -test-/thread_fd_close
configuring -test-/time
configuring -test-/tracepoint
configuring -test-/typeddata
configuring -test-/vm
configuring -test-/wait_for_single_fd
configuring continuation
configuring pty
configuring date
configuring nkf
configuring readline
configuring openssl
configuring rubyvm
configuring psych
configuring fiddle
configuring socket
make[1]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3'
generating makefile exts.mk
exts.mk updated
make[1]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/pathname'
compiling pathname.c
linking shared-object pathname.so
installing default pathname libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/pathname'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/stringio'
compiling stringio.c
stringio.c: In function ‘strio_ungetbyte’:
stringio.c:814:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  814 |         VALUE v = rb_funcall(c, rb_intern("modulo"), 1, INT2FIX(256));
      |         ^~~~~
stringio.c:822:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  822 |     const char *cp = RSTRING_PTR(c);
      |     ^~~~~
stringio.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
linking shared-object stringio.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/stringio'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/ripper'
compiling ripper.c
linking shared-object ripper.so
installing default ripper libraries
checking ../.././parse.y and ../.././ext/ripper/eventids2.c
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/ripper'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/fcntl'
compiling fcntl.c
linking shared-object fcntl.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/fcntl'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/io/console'
compiling console.c
linking shared-object io/console.so
installing default console libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/io/console'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/io/nonblock'
compiling nonblock.c
linking shared-object io/nonblock.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/io/nonblock'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/io/wait'
compiling wait.c
linking shared-object io/wait.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/io/wait'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/racc/cparse'
compiling cparse.c
linking shared-object racc/cparse.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/racc/cparse'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/etc'
compiling etc.c
linking shared-object etc.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/etc'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/strscan'
compiling strscan.c
linking shared-object strscan.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/strscan'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest'
compiling digest.c
linking shared-object digest.so
installing digest libraries
installing default digest libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/bubblebabble'
compiling bubblebabble.c
linking shared-object digest/bubblebabble.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/bubblebabble'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/md5'
compiling md5init.c
compiling md5.c
linking shared-object digest/md5.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/md5'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/rmd160'
compiling rmd160init.c
compiling rmd160.c
linking shared-object digest/rmd160.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/rmd160'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/sha1'
compiling sha1init.c
compiling sha1.c
linking shared-object digest/sha1.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/sha1'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/sha2'
compiling sha2init.c
compiling sha2.c
In file included from sha2.c:40:
sha2.c:578:28: warning: argument 2 of type ‘sha2_byte[]’ {aka ‘unsigned char[]’} with mismatched bound [-Warray-parameter=]
  578 | int SHA256_Final(sha2_byte digest[], SHA256_CTX* context) {
      |                  ~~~~~~~~~~^~~~~~~~
sha2.h:145:50: note: in definition of macro ‘SHA256_Final’
  145 | #define SHA256_Final(d, c)      SHA256_Finish(c, d)
      |                                                  ^
sha2.h:170:18: note: previously declared as ‘uint8_t[32]’ {aka ‘unsigned char[32]’}
  170 | int SHA256_Final(uint8_t[SHA256_DIGEST_LENGTH], SHA256_CTX*);
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha2.h:145:50: note: in definition of macro ‘SHA256_Final’
  145 | #define SHA256_Final(d, c)      SHA256_Finish(c, d)
      |                                                  ^
sha2.c:643:44: warning: argument 2 of type ‘char[]’ with mismatched bound [-Warray-parameter=]
  643 | char *SHA256_End(SHA256_CTX* context, char buffer[]) {
      |                                       ~~~~~^~~~~~~~
In file included from sha2.c:40:
sha2.h:171:31: note: previously declared as ‘char[65]’
  171 | char* SHA256_End(SHA256_CTX*, char[SHA256_DIGEST_STRING_LENGTH]);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha2.c:946:28: warning: argument 2 of type ‘sha2_byte[]’ {aka ‘unsigned char[]’} with mismatched bound [-Warray-parameter=]
  946 | int SHA512_Final(sha2_byte digest[], SHA512_CTX* context) {
      |                  ~~~~~~~~~~^~~~~~~~
sha2.h:163:50: note: in definition of macro ‘SHA512_Final’
  163 | #define SHA512_Final(d, c)      SHA512_Finish(c, d)
      |                                                  ^
sha2.h:182:18: note: previously declared as ‘uint8_t[64]’ {aka ‘unsigned char[64]’}
  182 | int SHA512_Final(uint8_t[SHA512_DIGEST_LENGTH], SHA512_CTX*);
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha2.h:163:50: note: in definition of macro ‘SHA512_Final’
  163 | #define SHA512_Final(d, c)      SHA512_Finish(c, d)
      |                                                  ^
sha2.c:976:44: warning: argument 2 of type ‘char[]’ with mismatched bound [-Warray-parameter=]
  976 | char *SHA512_End(SHA512_CTX* context, char buffer[]) {
      |                                       ~~~~~^~~~~~~~
In file included from sha2.c:40:
sha2.h:183:31: note: previously declared as ‘char[129]’
  183 | char* SHA512_End(SHA512_CTX*, char[SHA512_DIGEST_STRING_LENGTH]);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha2.c:1022:28: warning: argument 2 of type ‘sha2_byte[]’ {aka ‘unsigned char[]’} with mismatched bound [-Warray-parameter=]
 1022 | int SHA384_Final(sha2_byte digest[], SHA384_CTX* context) {
      |                  ~~~~~~~~~~^~~~~~~~
sha2.h:154:50: note: in definition of macro ‘SHA384_Final’
  154 | #define SHA384_Final(d, c)      SHA384_Finish(c, d)
      |                                                  ^
sha2.h:176:18: note: previously declared as ‘uint8_t[48]’ {aka ‘unsigned char[48]’}
  176 | int SHA384_Final(uint8_t[SHA384_DIGEST_LENGTH], SHA384_CTX*);
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha2.h:154:50: note: in definition of macro ‘SHA384_Final’
  154 | #define SHA384_Final(d, c)      SHA384_Finish(c, d)
      |                                                  ^
sha2.c:1052:44: warning: argument 2 of type ‘char[]’ with mismatched bound [-Warray-parameter=]
 1052 | char *SHA384_End(SHA384_CTX* context, char buffer[]) {
      |                                       ~~~~~^~~~~~~~
In file included from sha2.c:40:
sha2.h:177:31: note: previously declared as ‘char[97]’
  177 | char* SHA384_End(SHA384_CTX*, char[SHA384_DIGEST_STRING_LENGTH]);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
linking shared-object digest/sha2.so
installing default sha2 libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/digest/sha2'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/syslog'
compiling syslog.c
linking shared-object syslog.so
installing default syslog libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/syslog'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/bigdecimal'
compiling bigdecimal.c
linking shared-object bigdecimal.so
installing default bigdecimal libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/bigdecimal'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/bigdecimal/util'
compiling util.c
linking shared-object bigdecimal/util.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/bigdecimal/util'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/sdbm'
compiling _sdbm.c
compiling init.c
linking shared-object sdbm.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/sdbm'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/objspace'
compiling object_tracing.c
compiling objspace.c
compiling objspace_dump.c
linking shared-object objspace.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/objspace'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/fiber'
compiling fiber.c
linking shared-object fiber.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/fiber'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/rbconfig/sizeof'
compiling sizes.c
compiling limits.c
linking shared-object rbconfig/sizeof.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/rbconfig/sizeof'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/coverage'
compiling coverage.c
linking shared-object coverage.so
installing default coverage libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/coverage'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/zlib'
compiling zlib.c
linking shared-object zlib.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/zlib'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/cgi/escape'
compiling escape.c
linking shared-object cgi/escape.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/cgi/escape'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/json'
installing default libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/json'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/json/generator'
compiling generator.c
In file included from generator.c:1:
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 20 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 21 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 22 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 23 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 24 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 25 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 26 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 27 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 28 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 29 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json_integer’ at generator.c:849:9,
    inlined from ‘mInteger_to_json’ at generator.c:360:5:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘mInteger_to_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 30 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 20 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 21 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 22 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 23 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 24 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 25 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 26 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 27 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 28 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 29 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
In function ‘freverse’,
    inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
    inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
    inlined from ‘generate_json_fixnum’ at generator.c:836:5,
    inlined from ‘generate_json’ at generator.c:888:9:
../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
  145 |         c = *end, *end-- = *start, *start++ = c;
      |                                    ~~~~~~~~~^~~
generator.c: In function ‘generate_json’:
../fbuffer/fbuffer.h:164:10: note: at offset 30 into destination object ‘buf’ of size 20
  164 |     char buf[20];
      |          ^~~
generator.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
linking shared-object json/ext/generator.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/json/generator'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/json/parser'
compiling parser.c
linking shared-object json/ext/parser.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/json/parser'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/arith_seq/extract'
compiling extract.c
linking shared-object -test-/arith_seq/extract.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/arith_seq/extract'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/array/resize'
compiling resize.c
linking shared-object -test-/array/resize.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/array/resize'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bignum'
compiling div.c
compiling init.c
compiling intpack.c
compiling big2str.c
compiling str2big.c
compiling mul.c
compiling bigzero.c
linking shared-object -test-/bignum.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bignum'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bug-3571'
compiling bug.c
linking shared-object -test-/bug_3571.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bug-3571'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bug-5832'
compiling bug.c
linking shared-object -test-/bug_5832.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bug-5832'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bug_reporter'
compiling bug_reporter.c
linking shared-object -test-/bug_reporter.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/bug_reporter'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/class'
compiling init.c
compiling class2name.c
linking shared-object -test-/class.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/class'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/debug'
compiling profile_frames.c
compiling init.c
compiling inspector.c
linking shared-object -test-/debug.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/debug'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/dln/empty'
compiling empty.c
linking shared-object -test-/dln/empty.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/dln/empty'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/exception'
compiling dataerror.c
compiling init.c
compiling ensured.c
compiling enc_raise.c
linking shared-object -test-/exception.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/exception'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/fatal'
compiling rb_fatal.c
linking shared-object -test-/fatal/rb_fatal.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/fatal'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/file'
compiling init.c
compiling fs.c
compiling stat.c
linking shared-object -test-/file.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/file'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/float'
compiling nextafter.c
compiling init.c
linking shared-object -test-/float.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/float'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/funcall'
compiling funcall.c
linking shared-object -test-/funcall.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/funcall'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/gvl/call_without_gvl'
compiling call_without_gvl.c
linking shared-object -test-/gvl/call_without_gvl.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/gvl/call_without_gvl'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/hash'
compiling delete.c
compiling init.c
linking shared-object -test-/hash.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/hash'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/integer'
compiling my_integer.c
compiling init.c
compiling core_ext.c
linking shared-object -test-/integer.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/integer'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/iseq_load'
compiling iseq_load.c
linking shared-object -test-/iseq_load.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/iseq_load'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/iter'
compiling init.c
compiling break.c
compiling yield.c
linking shared-object -test-/iter.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/iter'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/load/dot.dot'
compiling dot.dot.c
linking shared-object -test-/load/dot.dot.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/load/dot.dot'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/load/protect'
compiling protect.c
linking shared-object -test-/load/protect.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/load/protect'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/marshal/compat'
compiling usrcompat.c
linking shared-object -test-/marshal/compat.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/marshal/compat'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/marshal/internal_ivar'
compiling internal_ivar.c
linking shared-object -test-/marshal/internal_ivar.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/marshal/internal_ivar'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/marshal/usr'
compiling usrmarshal.c
linking shared-object -test-/marshal/usr.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/marshal/usr'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/method'
compiling init.c
compiling arity.c
linking shared-object -test-/method.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/method'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/notimplement'
compiling bug.c
linking shared-object -test-/notimplement.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/notimplement'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/num2int'
compiling num2int.c
linking shared-object -test-/num2int.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/num2int'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/path_to_class'
compiling path_to_class.c
linking shared-object -test-/path_to_class.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/path_to_class'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/popen_deadlock'
compiling infinite_loop_dlsym.c
linking shared-object -test-/popen_deadlock/infinite_loop_dlsym.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/popen_deadlock'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/postponed_job'
compiling postponed_job.c
linking shared-object -test-/postponed_job.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/postponed_job'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/printf'
compiling printf.c
linking shared-object -test-/printf.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/printf'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/proc'
compiling init.c
compiling receiver.c
compiling super.c
linking shared-object -test-/proc.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/proc'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/rational'
compiling rat.c
linking shared-object -test-/rational.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/rational'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/recursion'
compiling recursion.c
linking shared-object -test-/recursion.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/recursion'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/regexp'
compiling parse_depth_limit.c
compiling init.c
linking shared-object -test-/regexp.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/regexp'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/scan_args'
compiling scan_args.c
linking shared-object -test-/scan_args.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/scan_args'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/st/foreach'
compiling foreach.c
linking shared-object -test-/st/foreach.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/st/foreach'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/st/numhash'
compiling numhash.c
linking shared-object -test-/st/numhash.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/st/numhash'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/st/update'
compiling update.c
linking shared-object -test-/st/update.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/st/update'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/string'
compiling cstr.c
compiling fstring.c
compiling nofree.c
compiling enc_str_buf_cat.c
compiling coderange.c
compiling modify.c
compiling new.c
compiling set_len.c
compiling capacity.c
compiling ellipsize.c
compiling enc_associate.c
compiling normalize.c
compiling init.c
compiling qsort.c
linking shared-object -test-/string.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/string'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/struct'
compiling duplicate.c
compiling len.c
compiling init.c
compiling member.c
linking shared-object -test-/struct.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/struct'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/symbol'
compiling type.c
compiling init.c
linking shared-object -test-/symbol.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/symbol'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/thread_fd_close'
compiling thread_fd_close.c
linking shared-object -test-/thread_fd_close.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/thread_fd_close'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/time'
compiling init.c
compiling new.c
compiling leap_second.c
linking shared-object -test-/time.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/time'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/tracepoint'
compiling gc_hook.c
compiling tracepoint.c
linking shared-object -test-/tracepoint.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/tracepoint'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/typeddata'
compiling typeddata.c
linking shared-object -test-/typeddata.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/typeddata'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/vm'
compiling at_exit.c
linking shared-object -test-/vm/at_exit.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/vm'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/wait_for_single_fd'
compiling wait_for_single_fd.c
linking shared-object -test-/wait_for_single_fd.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/-test-/wait_for_single_fd'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/continuation'
compiling continuation.c
linking shared-object continuation.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/continuation'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/pty'
compiling pty.c
linking shared-object pty.so
installing default pty libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/pty'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/date'
compiling date_core.c
compiling date_parse.c
compiling date_strftime.c
compiling date_strptime.c
linking shared-object date_core.so
installing default date_core libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/date'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/nkf'
compiling nkf.c
linking shared-object nkf.so
installing default nkf libraries
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/nkf'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/readline'
compiling readline.c
linking shared-object readline.so
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/readline'
make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/openssl'
compiling openssl_missing.c
compiling ossl.c
ossl.c: In function ‘ossl_clear_error’:
ossl.c:311:9: error: ‘ERR_get_error_line_data’ is deprecated: Since OpenSSL 3.0 [-Werror=deprecated-declarations]
  311 |         while ((e = ERR_get_error_line_data(&file, &line, &data, &flags))) {
      |         ^~~~~
In file included from ossl.h:21,
                 from ossl.c:10:
/usr/include/openssl/err.h:425:15: note: declared here
  425 | unsigned long ERR_get_error_line_data(const char **file, int *line,
      |               ^~~~~~~~~~~~~~~~~~~~~~~
ossl.c: At top level:
cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
cc1: some warnings being treated as errors
make[2]: *** [Makefile:312: ossl.o] Error 1
make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3/ext/openssl'
make[1]: *** [exts.mk:242: ext/openssl/all] Error 2
make[1]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.6.3'
make: *** [uncommon.mk:286: build-ext] Error 2
++ return 2

以上、よろしくお願いします。

0

1Answer

RVM(Ruby Version Manager)またはrbenvを使用することができます。以下は、RVMを使用した手順です。

RVMのインストール:
ターミナルを開き、以下のコマンドを実行してRVMをインストールします。

\curl -sSL https://get.rvm.io | bash -s stable
ターミナルを再起動:
現在のターミナルウィンドウを閉じて、新しいターミナルウィンドウを開きます。これにより、RVMが正しく読み込まれます。

必要なRubyバージョンをインストール:
例えば、Ruby 2.6.0をインストールしたい場合は、以下のコマンドを実行します。

rvm install 2.6.0
デフォルトのRubyバージョンを設定:
新しくインストールしたRubyバージョンをデフォルトに設定したい場合は、次のコマンドを実行します。

rvm use 2.6.0 --default
これにより、システムは起動時に指定したRubyバージョンを使用します。

1Like

Comments

  1. @PG_T

    Questioner

    ご回答いただきありがとうございます。

    RVMのインストールまではできたのですが、そのあと、下記コマンドにてRuby2.5をインストールしようとしたら、エラーが出てしまいました。
    $ rvm install 2.5

    何か原因がお分かりになれば、教えていただけると幸いです。

    ターミナルの表示と、make.logファイルを以下に示します。

    ターミナル
    ec2-user:~/environment $ rvm install 2.5
    Searching for binary rubies, this might take some time.
    No binary rubies available for: amazon/2023/x86_64/ruby-2.5.8.
    Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
    Checking requirements for amazon.
    Requirements installation successful.
    Installing Ruby from source to: /home/ec2-user/.rvm/rubies/ruby-2.5.8, this may take a while depending on your cpu(s)...
    ruby-2.5.8 - #downloading ruby-2.5.8, this may take a while depending on your connection...
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
    e depending on your cpu(s)...ruby-2.5.8 - #downloading ruby-2.5.8, this may take a while depending on your connection...
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                 Dload  Upload   Total   Spent    Left  Speed
    100 13.1M  100 13.1M    0     0  15.8M      0 --:--:-- --:--:-- --:--:-- 15.8Mruby-2.5.8 - #extracting ruby-2.5.8 to /home/ec2-user/.rvm/src/ruby-2.5.8.....
    ruby-2.5.8 - #configuring...................................................................
    ruby-2.5.8 - #post-configuration..
    ruby-2.5.8 - #compiling...................................................................................................................................................
    Error running '__rvm_make -j1',
    please read /home/ec2-user/.rvm/log/1710401215_ruby-2.5.8/make.log
    
    make.log
    [2024-03-14 07:27:30] __rvm_make
    __rvm_make () 
    { 
        \make "$@" || return $?
    }
    current path: /home/ec2-user/.rvm/src/ruby-2.5.8
    GEM_PATH=/home/ec2-user/.rvm/gems/ruby-3.2.1:/home/ec2-user/.rvm/gems/ruby-3.2.1@global
    GEM_HOME=/home/ec2-user/.rvm/gems/ruby-3.2.1
    PATH=/home/ec2-user/.rvm/gems/ruby-3.2.1/bin:/home/ec2-user/.rvm/gems/ruby-3.2.1@global/bin:/home/ec2-user/.rvm/rubies/ruby-3.2.1/bin:/home/ec2-user/.nvm/versions/node/v20.11.1/bin:/home/ec2-user/.rvm/gems/ruby-3.2.1/bin:/home/ec2-user/.rvm/gems/ruby-3.2.1@global/bin:/home/ec2-user/.rvm/rubies/ruby-3.2.1/bin:/home/ec2-user/.rvm/gems/ruby-3.2.1/bin:/home/ec2-user/.rvm/gems/ruby-3.2.1@global/bin:/home/ec2-user/.rvm/rubies/ruby-3.2.1/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ec2-user/.local/bin:/home/ec2-user/bin:/usr/local/bin:/home/ec2-user/.rvm/bin:/home/ec2-user/.local/bin:/home/ec2-user/bin:/usr/local/bin:/home/ec2-user/.rvm/bin:/home/ec2-user/.local/bin:/home/ec2-user/bin:/usr/local/bin:/home/ec2-user/.rvm/bin
    command(2): __rvm_make -j1
    ++ make -j1
    	CC = gcc
    	LD = ld
    	LDSHARED = gcc -shared
    	CFLAGS = -O3 -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wmisleading-indentation -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wimplicit-fallthrough=0 -Wduplicated-cond -Wrestrict -std=gnu99  -fPIC 
    	XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -fvisibility=hidden -fexcess-precision=standard -DRUBY_EXPORT
    	CPPFLAGS =   -I. -I.ext/include/x86_64-linux -I./include -I. -I./enc/unicode/10.0.0
    	DLDFLAGS = -Wl,--compress-debug-sections=zlib -Wl,-soname,libruby.so.2.5  -fstack-protector  
    	SOLIBS = -lpthread -ldl -lcrypt -lm  
    	LANG = C.UTF-8
    	LC_ALL = 
    	LC_CTYPE = 
    gcc (GCC) 11.4.1 20230605 (Red Hat 11.4.1-2)
    Copyright (C) 2021 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    compiling ./main.c
    compiling dmydln.c
    compiling miniinit.c
    compiling dmyext.c
    compiling miniprelude.c
    translating probes probes.d
    compiling array.c
    compiling bignum.c
    compiling class.c
    In file included from ./include/ruby.h:33,
                     from internal.h:15,
                     from class.c:26:
    class.c: In function ‘move_refined_method’:
    class.c:955:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      955 |             RB_OBJ_WRITE(me, &me->def->body.refined.orig_me, NULL);
    ./include/ruby/ruby.h:1439:75: note: in definition of macro ‘RB_OBJ_WRITE’
     1439 | #define RB_OBJ_WRITE(a, slot, b)       rb_obj_write((VALUE)(a), (VALUE *)(slot), (VALUE)(b), __FILE__, __LINE__)
          |                                                                           ^~~~
    class.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling compar.c
    compiling compile.c
    compile.c: In function ‘iseq_set_exception_table’:
    compile.c:2205:21: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     2205 |             entry = &table->entries[i];
          |                     ^~~~~~~~~~~~~~~~~~
    compile.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling complex.c
    compiling cont.c
    compiling debug.c
    compiling debug_counter.c
    compiling dir.c
    compiling dln_find.c
    compiling encoding.c
    compiling enum.c
    compiling enumerator.c
    compiling error.c
    compiling eval.c
    compiling file.c
    compiling gc.c
    gc.c: In function ‘make_io_zombie’:
    gc.c:2162:32: warning: cast between incompatible function types from ‘int (*)(rb_io_t *)’ to ‘void (*)(void *)[-Wcast-function-type]
     2162 |     make_zombie(objspace, obj, (void (*)(void*))rb_io_fptr_finalize, fptr);
          |                                ^
    gc.c: In function ‘mark_current_machine_context’:
    gc.c:4264:36: warning: expression does not compute the number of elements in this array; element type is ‘struct __jmp_buf_tag’, not ‘VALUE’ {aka ‘long unsigned int’} [-Wsizeof-array-div]
     4264 |         VALUE v[sizeof(rb_jmp_buf) / sizeof(VALUE)];
          |                                    ^
    gc.c:4264:36: note: add parentheses around the second ‘sizeof’ to silence this warning
    gc.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling hash.c
    compiling inits.c
    compiling io.c
    compiling iseq.c
    iseq.c: In function ‘rb_iseq_disasm’:
    iseq.c:1717:58: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1717 |             const struct iseq_catch_table_entry *entry = &iseq->body->catch_table->entries[i];
          |                                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    iseq.c: In function ‘rb_iseq_all_children’:
    iseq.c:1812:58: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1812 |             const struct iseq_catch_table_entry *entry = &iseq->body->catch_table->entries[i];
          |                                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    iseq.c: In function ‘iseq_data_to_ary’:
    iseq.c:2333:54: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     2333 |         const struct iseq_catch_table_entry *entry = &iseq->body->catch_table->entries[i];
          |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    iseq.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling load.c
    compiling marshal.c
    compiling math.c
    compiling node.c
    compiling numeric.c
    compiling object.c
    compiling pack.c
    compiling parse.c
    compiling proc.c
    compiling process.c
    process.c: In function ‘handle_fork_error’:
    process.c:3271:24: warning: cast between incompatible function types from ‘void (*)(int)’ to ‘VALUE (*)(){aka ‘long unsigned int (*)()} [-Wcast-function-type]
     3271 |             rb_protect((VALUE (*)())rb_thread_sleep, 1, &state);
          |                        ^
    process.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling random.c
    compiling range.c
    compiling rational.c
    compiling re.c
    compiling regcomp.c
    compiling regenc.c
    compiling regerror.c
    compiling regexec.c
    compiling regparse.c
    compiling regsyntax.c
    compiling ruby.c
    compiling safe.c
    compiling signal.c
    signal.c: In function ‘ruby_signal’:
    signal.c:599:31: warning: cast between incompatible function types from ‘ruby_sighandler_t’ {aka ‘void (*)(int)} to ‘void (*)(int,  siginfo_t *, void *)[-Wcast-function-type]
      599 |         sigact.sa_sigaction = (ruby_sigaction_t*)handler;
          |                               ^
    signal.c:628:19: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ to ‘void (*)(int)[-Wcast-function-type]
      628 |         handler = (sighandler_t)old.sa_sigaction;
          |                   ^
    signal.c: In function ‘default_handler’:
    signal.c:1101:16: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ to ‘void (*)(int)[-Wcast-function-type]
     1101 |         func = (sighandler_t)sigbus;
          |                ^
    signal.c:1106:16: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ to ‘void (*)(int)[-Wcast-function-type]
     1106 |         func = (sighandler_t)sigsegv;
          |                ^
    signal.c: In function ‘Init_signal’:
    signal.c:1522:36: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ to ‘void (*)(int)[-Wcast-function-type]
     1522 |         install_sighandler(SIGBUS, (sighandler_t)sigbus);
          |                                    ^
    signal.c:1389:15: note: in definition of macro ‘INSTALL_SIGHANDLER’
     1389 |         if (!(cond)) break; \
          |               ^~~~
    signal.c:1522:9: note: in expansion of macro ‘install_sighandler’
     1522 |         install_sighandler(SIGBUS, (sighandler_t)sigbus);
          |         ^~~~~~~~~~~~~~~~~~
    signal.c:1525:36: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ to ‘void (*)(int)[-Wcast-function-type]
     1525 |         install_sighandler(SIGILL, (sighandler_t)sigill);
          |                                    ^
    signal.c:1389:15: note: in definition of macro ‘INSTALL_SIGHANDLER’
     1389 |         if (!(cond)) break; \
          |               ^~~~
    signal.c:1525:9: note: in expansion of macro ‘install_sighandler’
     1525 |         install_sighandler(SIGILL, (sighandler_t)sigill);
          |         ^~~~~~~~~~~~~~~~~~
    signal.c:1531:37: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ to ‘void (*)(int)[-Wcast-function-type]
     1531 |         install_sighandler(SIGSEGV, (sighandler_t)sigsegv);
          |                                     ^
    signal.c:1389:15: note: in definition of macro ‘INSTALL_SIGHANDLER’
     1389 |         if (!(cond)) break; \
          |               ^~~~
    signal.c:1531:9: note: in expansion of macro ‘install_sighandler’
     1531 |         install_sighandler(SIGSEGV, (sighandler_t)sigsegv);
          |         ^~~~~~~~~~~~~~~~~~
    signal.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling sprintf.c
    compiling st.c
    compiling strftime.c
    strftime.c: In function ‘rb_strftime_with_timespec’:
    strftime.c:385:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]
      385 |                         if (vtm->wday < 0 || vtm->wday > 6)
          |                                       ^
    strftime.c:396:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]
      396 |                         if (vtm->wday < 0 || vtm->wday > 6)
          |                                       ^
    strftime.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling string.c
    compiling struct.c
    compiling symbol.c
    compiling thread.c
    In file included from thread.c:66:
    thread_sync.c: In function ‘queue_alloc’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:568:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      568 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
          |                        ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:613:20: note: in expansion of macro ‘queue_waitq’
      613 |     list_head_init(queue_waitq(q));
          |                    ^~~~~~~~~~~
    thread_sync.c: In function ‘queue_fork_check’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:568:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      568 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
          |                        ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:627:20: note: in expansion of macro ‘queue_waitq’
      627 |     list_head_init(queue_waitq(q));
          |                    ^~~~~~~~~~~
    thread_sync.c: In function ‘szqueue_alloc’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:576:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      576 | #define szqueue_waitq(sq) UNALIGNED_MEMBER_PTR(sq, q.waitq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:671:20: note: in expansion of macro ‘szqueue_waitq’
      671 |     list_head_init(szqueue_waitq(sq));
          |                    ^~~~~~~~~~~~~
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:672:20: note: in expansion of macro ‘szqueue_pushq’
      672 |     list_head_init(szqueue_pushq(sq));
          |                    ^~~~~~~~~~~~~
    thread_sync.c: In function ‘szqueue_ptr’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:683:24: note: in expansion of macro ‘szqueue_pushq’
      683 |         list_head_init(szqueue_pushq(sq));
          |                        ^~~~~~~~~~~~~
    thread_sync.c: In function ‘rb_queue_initialize’:
    thread_sync.c:773:24: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      773 |     RB_OBJ_WRITE(self, &q->que, ary_buf_new());
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:773:5: note: in expansion of macro ‘RB_OBJ_WRITE’
      773 |     RB_OBJ_WRITE(self, &q->que, ary_buf_new());
          |     ^~~~~~~~~~~~
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:568:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      568 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
          |                        ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:774:20: note: in expansion of macro ‘queue_waitq’
      774 |     list_head_init(queue_waitq(q));
          |                    ^~~~~~~~~~~
    thread_sync.c: In function ‘queue_do_push’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:568:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      568 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
          |                        ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:785:16: note: in expansion of macro ‘queue_waitq’
      785 |     wakeup_one(queue_waitq(q));
          |                ^~~~~~~~~~~
    thread_sync.c: In function ‘rb_queue_close’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:568:24: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      568 | #define queue_waitq(q) UNALIGNED_MEMBER_PTR(q, waitq)
          |                        ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:828:20: note: in expansion of macro ‘queue_waitq’
      828 |         wakeup_all(queue_waitq(q));
          |                    ^~~~~~~~~~~
    In file included from vm_core.h:68,
                     from eval_intern.h:5,
                     from thread.c:66:
    thread_sync.c: In function ‘queue_do_pop’:
    thread_sync.c:920:27: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      920 |             list_add_tail(&qw.as.q->waitq, &qw.w.node);
          |                           ^~~~~~~~~~~~~~~
    ccan/list/list.h:195:44: note: in definition of macro ‘list_add_tail’
      195 | #define list_add_tail(h, n) list_add_tail_(h, n, LIST_LOC)
          |                                            ^
    In file included from thread.c:66:
    thread_sync.c: In function ‘rb_szqueue_initialize’:
    thread_sync.c:1046:24: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1046 |     RB_OBJ_WRITE(self, &sq->q.que, ary_buf_new());
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:1046:5: note: in expansion of macro ‘RB_OBJ_WRITE’
     1046 |     RB_OBJ_WRITE(self, &sq->q.que, ary_buf_new());
          |     ^~~~~~~~~~~~
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:576:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      576 | #define szqueue_waitq(sq) UNALIGNED_MEMBER_PTR(sq, q.waitq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1047:20: note: in expansion of macro ‘szqueue_waitq’
     1047 |     list_head_init(szqueue_waitq(sq));
          |                    ^~~~~~~~~~~~~
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1048:20: note: in expansion of macro ‘szqueue_pushq’
     1048 |     list_head_init(szqueue_pushq(sq));
          |                    ^~~~~~~~~~~~~
    thread_sync.c: In function ‘rb_szqueue_close’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_queue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:576:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      576 | #define szqueue_waitq(sq) UNALIGNED_MEMBER_PTR(sq, q.waitq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1073:20: note: in expansion of macro ‘szqueue_waitq’
     1073 |         wakeup_all(szqueue_waitq(sq));
          |                    ^~~~~~~~~~~~~
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1074:20: note: in expansion of macro ‘szqueue_pushq’
     1074 |         wakeup_all(szqueue_pushq(sq));
          |                    ^~~~~~~~~~~~~
    thread_sync.c: In function ‘rb_szqueue_max_set’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1112:37: note: in expansion of macro ‘szqueue_pushq’
     1112 |     while (diff-- > 0 && wakeup_one(szqueue_pushq(sq))) {
          |                                     ^~~~~~~~~~~~~
    thread_sync.c: In function ‘rb_szqueue_push’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1158:39: note: in expansion of macro ‘szqueue_pushq’
     1158 |             struct list_head *pushq = szqueue_pushq(sq);
          |                                       ^~~~~~~~~~~~~
    thread_sync.c: In function ‘szqueue_do_pop’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1184:20: note: in expansion of macro ‘szqueue_pushq’
     1184 |         wakeup_one(szqueue_pushq(sq));
          |                    ^~~~~~~~~~~~~
    thread_sync.c: In function ‘rb_szqueue_clear’:
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_szqueue’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    thread_sync.c:577:27: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      577 | #define szqueue_pushq(sq) UNALIGNED_MEMBER_PTR(sq, pushq)
          |                           ^~~~~~~~~~~~~~~~~~~~
    thread_sync.c:1223:16: note: in expansion of macro ‘szqueue_pushq’
     1223 |     wakeup_all(szqueue_pushq(sq));
          |                ^~~~~~~~~~~~~
    thread.c: In function ‘rb_set_coverages’:
    thread.c:5194:24: warning: cast between incompatible function types from ‘void (*)(VALUE,  const rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  const struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     5194 |     rb_add_event_hook2((rb_event_hook_func_t) update_line_coverage, RUBY_EVENT_COVERAGE_LINE, Qnil, RUBY_EVENT_HOOK_FLAG_SAFE | RUBY_EVENT_HOOK_FLAG_RAW_ARG);
          |                        ^
    thread.c:5196:28: warning: cast between incompatible function types from ‘void (*)(VALUE,  const rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  const struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     5196 |         rb_add_event_hook2((rb_event_hook_func_t) update_branch_coverage, RUBY_EVENT_COVERAGE_BRANCH, Qnil, RUBY_EVENT_HOOK_FLAG_SAFE | RUBY_EVENT_HOOK_FLAG_RAW_ARG);
          |                            ^
    thread.c:5199:28: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     5199 |         rb_add_event_hook2((rb_event_hook_func_t) update_method_coverage, RUBY_EVENT_CALL, me2counter, RUBY_EVENT_HOOK_FLAG_SAFE | RUBY_EVENT_HOOK_FLAG_RAW_ARG);
          |                            ^
    thread.c: In function ‘rb_reset_coverages’:
    thread.c:5221:26: warning: cast between incompatible function types from ‘void (*)(VALUE,  const rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  const struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     5221 |     rb_remove_event_hook((rb_event_hook_func_t) update_line_coverage);
          |                          ^
    thread.c:5223:30: warning: cast between incompatible function types from ‘void (*)(VALUE,  const rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  const struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     5223 |         rb_remove_event_hook((rb_event_hook_func_t) update_branch_coverage);
          |                              ^
    thread.c:5226:30: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     5226 |         rb_remove_event_hook((rb_event_hook_func_t) update_method_coverage);
          |                              ^
    thread.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling time.c
    compiling transcode.c
    compiling util.c
    compiling variable.c
    compiling version.c
    compiling vm.c
    In file included from vm.c:300:
    vm_insnhelper.c: In function ‘vm_throw_start’:
    vm_insnhelper.c:1109:77: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1109 |                         const struct iseq_catch_table_entry * const entry = &ct->entries[i];
          |                                                                             ^~~~~~~~~~~~~~~
    In file included from vm.c:300:
    vm_insnhelper.c: In function ‘vm_method_cfunc_entry’:
    vm_insnhelper.c:1892:12: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1892 |     return &me->def->body.cfunc;
          |            ^~~~~~~~~~~~~~~~~~~~
    In file included from vm.c:18:
    vm_insnhelper.c: In function ‘aliased_callable_method_entry’:
    vm_insnhelper.c:2182:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     2182 |             RB_OBJ_WRITE(me, &me->def->body.alias.original_me, cme);
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_insnhelper.c:2182:13: note: in expansion of macro ‘RB_OBJ_WRITE’
     2182 |             RB_OBJ_WRITE(me, &me->def->body.alias.original_me, cme);
          |             ^~~~~~~~~~~~
    vm_method.c: In function ‘method_definition_set’:
    vm_method.c:238:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      238 |                 RB_OBJ_WRITE(me, &def->body.iseq.iseqptr, iseq_body->iseqptr);
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:238:17: note: in expansion of macro ‘RB_OBJ_WRITE’
      238 |                 RB_OBJ_WRITE(me, &def->body.iseq.iseqptr, iseq_body->iseqptr);
          |                 ^~~~~~~~~~~~
    vm_method.c:249:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      249 |                 RB_OBJ_WRITE(me, &def->body.iseq.cref, method_cref);
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:249:17: note: in expansion of macro ‘RB_OBJ_WRITE’
      249 |                 RB_OBJ_WRITE(me, &def->body.iseq.cref, method_cref);
          |                 ^~~~~~~~~~~~
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:255:43: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      255 |                 setup_method_cfunc_struct(UNALIGNED_MEMBER_PTR(def, body.cfunc), cfunc->func, cfunc->argc);
          |                                           ^~~~~~~~~~~~~~~~~~~~
    vm_method.c:271:38: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      271 |                     RB_OBJ_WRITE(me, &def->body.attr.location, rb_ary_freeze(location));
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:271:21: note: in expansion of macro ‘RB_OBJ_WRITE’
      271 |                     RB_OBJ_WRITE(me, &def->body.attr.location, rb_ary_freeze(location));
          |                     ^~~~~~~~~~~~
    vm_method.c:279:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      279 |             RB_OBJ_WRITE(me, &def->body.proc, (VALUE)opts);
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:279:13: note: in expansion of macro ‘RB_OBJ_WRITE’
      279 |             RB_OBJ_WRITE(me, &def->body.proc, (VALUE)opts);
          |             ^~~~~~~~~~~~
    eval_intern.h:173:64: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      173 | #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:282:39: note: in expansion of macro ‘UNALIGNED_MEMBER_PTR’
      282 |             setup_method_cfunc_struct(UNALIGNED_MEMBER_PTR(def, body.cfunc), rb_f_notimplement, -1);
          |                                       ^~~~~~~~~~~~~~~~~~~~
    vm_method.c:290:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      290 |                 RB_OBJ_WRITE(me, &def->body.refined.orig_me, refined->orig_me);
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:290:17: note: in expansion of macro ‘RB_OBJ_WRITE’
      290 |                 RB_OBJ_WRITE(me, &def->body.refined.orig_me, refined->orig_me);
          |                 ^~~~~~~~~~~~
    vm_method.c:291:34: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      291 |                 RB_OBJ_WRITE(me, &def->body.refined.owner, refined->owner);
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:291:17: note: in expansion of macro ‘RB_OBJ_WRITE’
      291 |                 RB_OBJ_WRITE(me, &def->body.refined.owner, refined->owner);
          |                 ^~~~~~~~~~~~
    vm_method.c:295:30: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
      295 |             RB_OBJ_WRITE(me, &def->body.alias.original_me, (rb_method_entry_t *)opts);
    eval_intern.h:171:40: note: in definition of macro ‘UNALIGNED_MEMBER_ACCESS’
      171 | # define UNALIGNED_MEMBER_ACCESS(expr) expr
          |                                        ^~~~
    vm_method.c:295:13: note: in expansion of macro ‘RB_OBJ_WRITE’
      295 |             RB_OBJ_WRITE(me, &def->body.alias.original_me, (rb_method_entry_t *)opts);
          |             ^~~~~~~~~~~~
    In file included from vm.c:304:
    vm_eval.c: In function ‘vm_call0_cfunc_with_frame’:
    vm_eval.c:66:38: warning: taking address of packed member of ‘struct rb_method_definition_struct’ may result in an unaligned pointer value [-Waddress-of-packed-member]
       66 |     const rb_method_cfunc_t *cfunc = &me->def->body.cfunc;
          |                                      ^~~~~~~~~~~~~~~~~~~~
    vm_eval.c: In function ‘rb_eval_string_protect’:
    vm_eval.c:1472:23: warning: cast between incompatible function types from ‘VALUE (*)(const char *){aka ‘long unsigned int (*)(const char *)} to ‘VALUE (*)(VALUE){aka ‘long unsigned int (*)(long unsigned int)} [-Wcast-function-type]
     1472 |     return rb_protect((VALUE (*)(VALUE))rb_eval_string, (VALUE)str, pstate);
          |                       ^
    vm.c: In function ‘vm_exec’:
    vm.c:1832:37: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1832 |                             entry = &ct->entries[i];
          |                                     ^~~~~~~~~~~~~~~
    vm.c:1869:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1869 |                 entry = &ct->entries[i];
          |                         ^~~~~~~~~~~~~~~
    vm.c:1885:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1885 |                 entry = &ct->entries[i];
          |                         ^~~~~~~~~~~~~~~
    vm.c:1912:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1912 |                 entry = &ct->entries[i];
          |                         ^~~~~~~~~~~~~~~
    vm.c:1950:25: warning: taking address of packed member of ‘struct iseq_catch_table’ may result in an unaligned pointer value [-Waddress-of-packed-member]
     1950 |                 entry = &ct->entries[i];
          |                         ^~~~~~~~~~~~~~~
    vm.c: In function ‘check_machine_stack_size’:
    vm.c:2245:14: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
     2245 |     if (size < PTHREAD_STACK_MIN) {
          |              ^
    vm.c: In function ‘rb_execution_context_mark’:
    vm.c:2366:55: warning: expression does not compute the number of elements in this array; element type is ‘const struct __jmp_buf_tag’, not ‘VALUE’ {aka ‘long unsigned int’} [-Wsizeof-array-div]
     2366 |                              sizeof(ec->machine.regs) / sizeof(VALUE));
          |                                                       ^
    vm.c:2366:55: note: add parentheses around the second ‘sizeof’ to silence this warning
    vm.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling vm_backtrace.c
    compiling vm_dump.c
    compiling vm_trace.c
    vm_trace.c: In function ‘exec_hooks_body’:
    vm_trace.c:268:20: warning: cast between incompatible function types from ‘rb_event_hook_func_t’ {aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} to ‘void (*)(VALUE,  const rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  const struct rb_trace_arg_struct *)} [-Wcast-function-type]
      268 |                 (*((rb_event_hook_raw_arg_func_t)hook->func))(hook->data, trace_arg);
          |                    ^
    vm_trace.c: In function ‘rb_tracepoint_enable’:
    vm_trace.c:1040:56: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     1040 |         rb_thread_add_event_hook2(tp->target_th->self, (rb_event_hook_func_t)tp_call_trace, tp->events, tpval,
          |                                                        ^
    vm_trace.c:1044:28: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     1044 |         rb_add_event_hook2((rb_event_hook_func_t)tp_call_trace, tp->events, tpval,
          |                            ^
    vm_trace.c: In function ‘rb_tracepoint_disable’:
    vm_trace.c:1059:68: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     1059 |         rb_thread_remove_event_hook_with_data(tp->target_th->self, (rb_event_hook_func_t)tp_call_trace, tpval);
          |                                                                    ^
    vm_trace.c:1062:40: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *){aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE){aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)} [-Wcast-function-type]
     1062 |         rb_remove_event_hook_with_data((rb_event_hook_func_t)tp_call_trace, tpval);
          |                                        ^
    vm_trace.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    processing probes in object files
    compiling enc/ascii.c
    compiling enc/us_ascii.c
    compiling enc/unicode.c
    enc/unicode.c: In function ‘onigenc_unicode_get_case_fold_codes_by_str’:
    enc/unicode.c:557:28: warning: ‘ncs’ may be used uninitialized [-Wmaybe-uninitialized]
      557 |         for (i = 0; i < ncs[0]; i++) {
          |                         ~~~^~~
    enc/unicode.c:519:15: note: ‘ncs’ declared here
      519 |       int fn, ncs[3];
          |               ^~~
    enc/unicode.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling enc/utf_8.c
    compiling enc/trans/newline.c
    compiling ./missing/setproctitle.c
    compiling ./missing/strlcat.c
    compiling ./missing/strlcpy.c
    compiling addr2line.c
    compiling dmyenc.c
    linking miniruby
    ./revision.h unchanged
    generating encdb.h
    encdb.h updated
    ./tool/ifchange "--timestamp=.rbconfig.time" rbconfig.rb rbconfig.tmp
    rbconfig.rb updated
    generating enc.mk
    making srcs under enc
    make[1]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8'
    make[1]: Nothing to be done for 'srcs'.
    make[1]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8'
    generating transdb.h
    transdb.h updated
    compiling dln.c
    compiling localeinit.c
    creating verconf.h
    verconf.h updated
    compiling loadpath.c
    compiling prelude.c
    linking static-library libruby-static.a
    linking shared-library libruby.so.2.5.8
    generating makefiles ext/configure-ext.mk
    ext/configure-ext.mk updated
    make[1]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8'
    configuring -test-/array/resize
    configuring -test-/bignum
    configuring -test-/bug-3571
    configuring -test-/bug-5832
    configuring -test-/bug_reporter
    configuring -test-/class
    configuring -test-/debug
    configuring -test-/dln/empty
    configuring -test-/exception
    configuring -test-/fatal
    configuring -test-/file
    configuring -test-/float
    configuring -test-/funcall
    configuring -test-/gvl/call_without_gvl
    configuring -test-/hash
    configuring -test-/integer
    configuring -test-/iseq_load
    configuring -test-/iter
    configuring -test-/load/dot.dot
    configuring -test-/load/protect
    configuring -test-/marshal/compat
    configuring -test-/marshal/internal_ivar
    configuring -test-/marshal/usr
    configuring -test-/memory_status
    configuring -test-/method
    configuring -test-/notimplement
    configuring -test-/num2int
    configuring -test-/path_to_class
    configuring -test-/popen_deadlock
    configuring -test-/postponed_job
    configuring -test-/printf
    configuring -test-/proc
    configuring -test-/rational
    configuring -test-/recursion
    configuring -test-/regexp
    configuring -test-/scan_args
    configuring -test-/st/foreach
    configuring -test-/st/numhash
    configuring -test-/st/update
    configuring -test-/string
    configuring -test-/struct
    configuring -test-/symbol
    configuring -test-/thread_fd_close
    configuring -test-/time
    configuring -test-/tracepoint
    configuring -test-/typeddata
    configuring -test-/vm
    configuring -test-/wait_for_single_fd
    configuring bigdecimal
    configuring cgi/escape
    configuring continuation
    configuring coverage
    configuring date
    configuring dbm
    configuring digest
    configuring digest/bubblebabble
    configuring digest/md5
    configuring digest/rmd160
    configuring digest/sha1
    configuring digest/sha2
    configuring etc
    configuring fcntl
    configuring fiber
    configuring fiddle
    configuring gdbm
    configuring io/console
    configuring io/nonblock
    configuring io/wait
    configuring json
    configuring json/generator
    configuring json/parser
    configuring nkf
    configuring objspace
    configuring openssl
    configuring pathname
    configuring psych
    configuring pty
    configuring racc/cparse
    configuring rbconfig/sizeof
    configuring readline
    configuring ripper
    configuring rubyvm
    configuring sdbm
    configuring socket
    configuring stringio
    configuring strscan
    configuring syslog
    configuring zlib
    make[1]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8'
    generating makefile exts.mk
    exts.mk updated
    make[1]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/array/resize'
    compiling resize.c
    linking shared-object -test-/array/resize.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/array/resize'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bignum'
    compiling big2str.c
    compiling bigzero.c
    compiling div.c
    compiling init.c
    compiling intpack.c
    compiling mul.c
    compiling str2big.c
    linking shared-object -test-/bignum.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bignum'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bug-3571'
    compiling bug.c
    linking shared-object -test-/bug_3571.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bug-3571'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bug-5832'
    compiling bug.c
    linking shared-object -test-/bug_5832.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bug-5832'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bug_reporter'
    compiling bug_reporter.c
    linking shared-object -test-/bug_reporter.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/bug_reporter'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/class'
    compiling class2name.c
    compiling init.c
    linking shared-object -test-/class.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/class'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/debug'
    compiling init.c
    compiling inspector.c
    compiling profile_frames.c
    linking shared-object -test-/debug.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/debug'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/dln/empty'
    compiling empty.c
    linking shared-object -test-/dln/empty.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/dln/empty'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/exception'
    compiling dataerror.c
    compiling enc_raise.c
    compiling ensured.c
    compiling init.c
    linking shared-object -test-/exception.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/exception'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/fatal'
    compiling rb_fatal.c
    linking shared-object -test-/fatal/rb_fatal.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/fatal'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/file'
    compiling fs.c
    compiling init.c
    compiling stat.c
    linking shared-object -test-/file.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/file'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/float'
    compiling init.c
    compiling nextafter.c
    linking shared-object -test-/float.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/float'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/funcall'
    compiling funcall.c
    linking shared-object -test-/funcall.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/funcall'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/gvl/call_without_gvl'
    compiling call_without_gvl.c
    linking shared-object -test-/gvl/call_without_gvl.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/gvl/call_without_gvl'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/hash'
    compiling delete.c
    compiling init.c
    linking shared-object -test-/hash.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/hash'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/integer'
    compiling core_ext.c
    compiling init.c
    compiling my_integer.c
    linking shared-object -test-/integer.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/integer'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/iseq_load'
    compiling iseq_load.c
    linking shared-object -test-/iseq_load.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/iseq_load'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/iter'
    compiling break.c
    compiling init.c
    compiling yield.c
    linking shared-object -test-/iter.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/iter'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/load/dot.dot'
    compiling dot.dot.c
    linking shared-object -test-/load/dot.dot.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/load/dot.dot'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/load/protect'
    compiling protect.c
    linking shared-object -test-/load/protect.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/load/protect'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/marshal/compat'
    compiling usrcompat.c
    linking shared-object -test-/marshal/compat.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/marshal/compat'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/marshal/internal_ivar'
    compiling internal_ivar.c
    linking shared-object -test-/marshal/internal_ivar.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/marshal/internal_ivar'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/marshal/usr'
    compiling usrmarshal.c
    linking shared-object -test-/marshal/usr.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/marshal/usr'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/method'
    compiling arity.c
    compiling init.c
    linking shared-object -test-/method.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/method'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/notimplement'
    compiling bug.c
    linking shared-object -test-/notimplement.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/notimplement'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/num2int'
    compiling num2int.c
    linking shared-object -test-/num2int.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/num2int'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/path_to_class'
    compiling path_to_class.c
    linking shared-object -test-/path_to_class.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/path_to_class'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/popen_deadlock'
    compiling infinite_loop_dlsym.c
    linking shared-object -test-/popen_deadlock/infinite_loop_dlsym.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/popen_deadlock'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/postponed_job'
    compiling postponed_job.c
    linking shared-object -test-/postponed_job.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/postponed_job'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/printf'
    compiling printf.c
    linking shared-object -test-/printf.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/printf'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/proc'
    compiling init.c
    compiling receiver.c
    compiling super.c
    linking shared-object -test-/proc.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/proc'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/rational'
    compiling rat.c
    linking shared-object -test-/rational.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/rational'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/recursion'
    compiling recursion.c
    linking shared-object -test-/recursion.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/recursion'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/regexp'
    compiling init.c
    compiling parse_depth_limit.c
    linking shared-object -test-/regexp.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/regexp'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/scan_args'
    compiling scan_args.c
    linking shared-object -test-/scan_args.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/scan_args'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/st/foreach'
    compiling foreach.c
    linking shared-object -test-/st/foreach.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/st/foreach'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/st/numhash'
    compiling numhash.c
    linking shared-object -test-/st/numhash.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/st/numhash'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/st/update'
    compiling update.c
    linking shared-object -test-/st/update.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/st/update'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/string'
    compiling capacity.c
    compiling coderange.c
    compiling cstr.c
    compiling ellipsize.c
    compiling enc_associate.c
    compiling enc_str_buf_cat.c
    compiling fstring.c
    compiling init.c
    compiling modify.c
    compiling new.c
    compiling nofree.c
    compiling normalize.c
    compiling qsort.c
    compiling rb_str_dup.c
    compiling set_len.c
    linking shared-object -test-/string.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/string'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/struct'
    compiling duplicate.c
    compiling init.c
    compiling len.c
    compiling member.c
    linking shared-object -test-/struct.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/struct'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/symbol'
    compiling init.c
    compiling type.c
    linking shared-object -test-/symbol.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/symbol'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/thread_fd_close'
    compiling thread_fd_close.c
    linking shared-object -test-/thread_fd_close.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/thread_fd_close'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/time'
    compiling init.c
    compiling new.c
    linking shared-object -test-/time.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/time'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/tracepoint'
    compiling gc_hook.c
    compiling tracepoint.c
    linking shared-object -test-/tracepoint.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/tracepoint'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/typeddata'
    compiling typeddata.c
    linking shared-object -test-/typeddata.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/typeddata'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/vm'
    compiling at_exit.c
    linking shared-object -test-/vm/at_exit.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/vm'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/wait_for_single_fd'
    compiling wait_for_single_fd.c
    linking shared-object -test-/wait_for_single_fd.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/-test-/wait_for_single_fd'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/bigdecimal'
    compiling bigdecimal.c
    linking shared-object bigdecimal.so
    installing default bigdecimal libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/bigdecimal'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/cgi/escape'
    compiling escape.c
    linking shared-object cgi/escape.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/cgi/escape'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/continuation'
    compiling continuation.c
    linking shared-object continuation.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/continuation'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/coverage'
    compiling coverage.c
    linking shared-object coverage.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/coverage'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/date'
    compiling date_core.c
    compiling date_parse.c
    compiling date_strftime.c
    compiling date_strptime.c
    linking shared-object date_core.so
    installing default date_core libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/date'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest'
    compiling digest.c
    linking shared-object digest.so
    installing digest libraries
    installing default digest libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/bubblebabble'
    compiling bubblebabble.c
    linking shared-object digest/bubblebabble.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/bubblebabble'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/md5'
    compiling md5init.c
    compiling md5.c
    linking shared-object digest/md5.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/md5'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/rmd160'
    compiling rmd160init.c
    compiling rmd160.c
    linking shared-object digest/rmd160.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/rmd160'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/sha1'
    compiling sha1init.c
    compiling sha1.c
    linking shared-object digest/sha1.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/sha1'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/sha2'
    compiling sha2init.c
    compiling sha2.c
    In file included from sha2.c:40:
    sha2.c:578:28: warning: argument 2 of type ‘sha2_byte[]’ {aka ‘unsigned char[]’} with mismatched bound [-Warray-parameter=]
      578 | int SHA256_Final(sha2_byte digest[], SHA256_CTX* context) {
          |                  ~~~~~~~~~~^~~~~~~~
    sha2.h:145:50: note: in definition of macro ‘SHA256_Final’
      145 | #define SHA256_Final(d, c)      SHA256_Finish(c, d)
          |                                                  ^
    sha2.h:170:18: note: previously declared as ‘uint8_t[32]’ {aka ‘unsigned char[32]’}
      170 | int SHA256_Final(uint8_t[SHA256_DIGEST_LENGTH], SHA256_CTX*);
          |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    sha2.h:145:50: note: in definition of macro ‘SHA256_Final’
      145 | #define SHA256_Final(d, c)      SHA256_Finish(c, d)
          |                                                  ^
    sha2.c:643:44: warning: argument 2 of type ‘char[]’ with mismatched bound [-Warray-parameter=]
      643 | char *SHA256_End(SHA256_CTX* context, char buffer[]) {
          |                                       ~~~~~^~~~~~~~
    In file included from sha2.c:40:
    sha2.h:171:31: note: previously declared as ‘char[65]’
      171 | char* SHA256_End(SHA256_CTX*, char[SHA256_DIGEST_STRING_LENGTH]);
          |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    sha2.c:946:28: warning: argument 2 of type ‘sha2_byte[]’ {aka ‘unsigned char[]’} with mismatched bound [-Warray-parameter=]
      946 | int SHA512_Final(sha2_byte digest[], SHA512_CTX* context) {
          |                  ~~~~~~~~~~^~~~~~~~
    sha2.h:163:50: note: in definition of macro ‘SHA512_Final’
      163 | #define SHA512_Final(d, c)      SHA512_Finish(c, d)
          |                                                  ^
    sha2.h:182:18: note: previously declared as ‘uint8_t[64]’ {aka ‘unsigned char[64]’}
      182 | int SHA512_Final(uint8_t[SHA512_DIGEST_LENGTH], SHA512_CTX*);
          |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    sha2.h:163:50: note: in definition of macro ‘SHA512_Final’
      163 | #define SHA512_Final(d, c)      SHA512_Finish(c, d)
          |                                                  ^
    sha2.c:976:44: warning: argument 2 of type ‘char[]’ with mismatched bound [-Warray-parameter=]
      976 | char *SHA512_End(SHA512_CTX* context, char buffer[]) {
          |                                       ~~~~~^~~~~~~~
    In file included from sha2.c:40:
    sha2.h:183:31: note: previously declared as ‘char[129]’
      183 | char* SHA512_End(SHA512_CTX*, char[SHA512_DIGEST_STRING_LENGTH]);
          |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    sha2.c:1022:28: warning: argument 2 of type ‘sha2_byte[]’ {aka ‘unsigned char[]’} with mismatched bound [-Warray-parameter=]
     1022 | int SHA384_Final(sha2_byte digest[], SHA384_CTX* context) {
          |                  ~~~~~~~~~~^~~~~~~~
    sha2.h:154:50: note: in definition of macro ‘SHA384_Final’
      154 | #define SHA384_Final(d, c)      SHA384_Finish(c, d)
          |                                                  ^
    sha2.h:176:18: note: previously declared as ‘uint8_t[48]’ {aka ‘unsigned char[48]’}
      176 | int SHA384_Final(uint8_t[SHA384_DIGEST_LENGTH], SHA384_CTX*);
          |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    sha2.h:154:50: note: in definition of macro ‘SHA384_Final’
      154 | #define SHA384_Final(d, c)      SHA384_Finish(c, d)
          |                                                  ^
    sha2.c:1052:44: warning: argument 2 of type ‘char[]’ with mismatched bound [-Warray-parameter=]
     1052 | char *SHA384_End(SHA384_CTX* context, char buffer[]) {
          |                                       ~~~~~^~~~~~~~
    In file included from sha2.c:40:
    sha2.h:177:31: note: previously declared as ‘char[97]’
      177 | char* SHA384_End(SHA384_CTX*, char[SHA384_DIGEST_STRING_LENGTH]);
          |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    linking shared-object digest/sha2.so
    installing default sha2 libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/digest/sha2'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/etc'
    generating constant definitions
    compiling etc.c
    linking shared-object etc.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/etc'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/fcntl'
    compiling fcntl.c
    linking shared-object fcntl.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/fcntl'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/fiber'
    compiling fiber.c
    linking shared-object fiber.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/fiber'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/fiddle'
    compiling closure.c
    closure.c: In function ‘initialize’:
    closure.c:264:5: warning: ‘ffi_prep_closure’ is deprecated: use ffi_prep_closure_loc instead [-Wdeprecated-declarations]
      264 |     result = ffi_prep_closure(pcl, cif, callback, (void *)self);
          |     ^~~~~~
    In file included from /usr/include/ffi.h:18,
                     from ./fiddle.h:42,
                     from closure.c:1:
    /usr/include/ffi-x86_64.h:375:1: note: declared here
      375 | ffi_prep_closure (ffi_closure*,
          | ^~~~~~~~~~~~~~~~
    closure.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    compiling conversions.c
    compiling fiddle.c
    compiling function.c
    compiling handle.c
    compiling pointer.c
    linking shared-object fiddle.so
    installing default fiddle libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/fiddle'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/io/console'
    compiling console.c
    linking shared-object io/console.so
    installing default console libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/io/console'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/io/nonblock'
    compiling nonblock.c
    linking shared-object io/nonblock.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/io/nonblock'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/io/wait'
    compiling wait.c
    linking shared-object io/wait.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/io/wait'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/json'
    installing default libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/json'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/json/generator'
    compiling generator.c
    In file included from generator.c:1:
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 20 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 21 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 22 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 23 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 24 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 25 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 26 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 27 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 28 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 29 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json_integer’ at generator.c:849:9,
        inlined from ‘mInteger_to_json’ at generator.c:360:5:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘mInteger_to_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 30 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 20 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 21 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 22 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 23 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 24 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 25 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 26 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 27 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 28 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 29 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    In function ‘freverse’,
        inlined from ‘fltoa’ at ../fbuffer/fbuffer.h:158:5,
        inlined from ‘fbuffer_append_long’ at ../fbuffer/fbuffer.h:165:25,
        inlined from ‘generate_json_fixnum’ at generator.c:836:5,
        inlined from ‘generate_json’ at generator.c:888:9:
    ../fbuffer/fbuffer.h:145:45: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
      145 |         c = *end, *end-- = *start, *start++ = c;
          |                                    ~~~~~~~~~^~~
    generator.c: In function ‘generate_json’:
    ../fbuffer/fbuffer.h:164:10: note: at offset 30 into destination object ‘buf’ of size 20
      164 |     char buf[20];
          |          ^~~
    generator.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    linking shared-object json/ext/generator.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/json/generator'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/json/parser'
    compiling parser.c
    linking shared-object json/ext/parser.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/json/parser'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/nkf'
    compiling nkf.c
    linking shared-object nkf.so
    installing default nkf libraries
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/nkf'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/objspace'
    compiling object_tracing.c
    compiling objspace.c
    compiling objspace_dump.c
    linking shared-object objspace.so
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/objspace'
    make[2]: Entering directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/openssl'
    compiling openssl_missing.c
    compiling ossl.c
    ossl.c: In function ‘ossl_protect_x509_ary2sk’:
    ossl.c:47:13: warning: cast between incompatible function types from ‘struct stack_st_X509 * (*)(VALUE){aka ‘struct stack_st_X509 * (*)(long unsigned int)} to ‘VALUE (*)(VALUE){aka ‘long unsigned int (*)(long unsigned int)} [-Wcast-function-type]
       47 |             (VALUE (*)(VALUE))ossl_##name##_ary2sk0,            \
          |             ^
    ossl.c:63:1: note: in expansion of macro ‘OSSL_IMPL_ARY2SK’
       63 | OSSL_IMPL_ARY2SK(x509, X509, cX509Cert, DupX509CertPtr)
          | ^~~~~~~~~~~~~~~~
    ossl.c: In function ‘ossl_clear_error’:
    ossl.c:311:9: error: ‘ERR_get_error_line_data’ is deprecated: Since OpenSSL 3.0 [-Werror=deprecated-declarations]
      311 |         while ((e = ERR_get_error_line_data(&file, &line, &data, &flags))) {
          |         ^~~~~
    In file included from ossl.h:21,
                     from ossl.c:10:
    /usr/include/openssl/err.h:425:15: note: declared here
      425 | unsigned long ERR_get_error_line_data(const char **file, int *line,
          |               ^~~~~~~~~~~~~~~~~~~~~~~
    ossl.c: At top level:
    cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
    cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
    cc1: some warnings being treated as errors
    make[2]: *** [Makefile:311: ossl.o] Error 1
    make[2]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8/ext/openssl'
    make[1]: *** [exts.mk:236: ext/openssl/all] Error 2
    make[1]: Leaving directory '/home/ec2-user/.rvm/src/ruby-2.5.8'
    make: *** [uncommon.mk:240: build-ext] Error 2
    ++ return 2
    

Your answer might help someone💌