ruby21 seems to be using init_dwarf_reg_size_table in its build: 1 warning generated. 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 compiling string.c compiling struct.c compiling time.c compiling transcode.c compiling util.c compiling variable.c compiling version.c compiling compile.c compiling debug.c compiling iseq.c compiling vm.c compiling vm_dump.c compiling vm_backtrace.c compiling vm_trace.c compiling thread.c compiling cont.c compiling ./enc/ascii.c compiling ./enc/us_ascii.c compiling ./enc/unicode.c compiling ./enc/utf_8.c compiling newline.c compiling ./missing/close.c compiling addr2line.c compiling dmyext.c linking miniruby rbconfig.rb updated Unimplemented: init_dwarf_reg_size_table qemu: uncaught target signal 6 (Abort trap) - core dumped *** Signal 6 Stop. make[1]: stopped in /wrkdirs/usr/ports/lang/ruby21/work/ruby-2.1.6 *** Error code 1 Stop. make: stopped in /usr/ports/lang/ruby21 ====>> Cleaning up wrkdir ===> Cleaning for ruby-2.1.6,1 build of lang/ruby21 ended at Fri Aug 7 16:51:23 UTC 2015 build time: 00:06:39 !!! build failure encountered !!!
This is an error message from libgcc_s.so. It will be fixed when we import new unwind code, the gcc code doesn't work with arm64.
See https://reviews.freebsd.org/D3384. The intent is that by using llvm-libunwind we won't need init_dwarf_reg_size_table, but it's no trouble to implement it in case someone wants to experiment with consumers requiring it.
Fixed with the new unwind code