"pkg-config --exists libffi" package configuration for libffi is not found have_header: checking for ffi.h... -------------------- no "clang -o conftest -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -fstack-protector -L/usr/local/lib -lruby.2.5.1-static -framework Foundation -lpthread -lgmp -ldl -lobjc " checked program was: /* begin */ 1: #include "ruby.h" 2: 3: int main(int argc, char **argv) 4: { 5: return 0; 6: } /* end */ "clang -E -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -o conftest.i" conftest.c:3:10: fatal error: 'ffi.h' file not found #include ^~~~~~~ 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include /* end */ -------------------- find_header: checking for ffi.h in /usr/local/include,/usr/include/ffi... -------------------- no "clang -E -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -o conftest.i" conftest.c:3:10: fatal error: 'ffi.h' file not found #include ^~~~~~~ 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include /* end */ "clang -E -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe -I/usr/local/include conftest.c -o conftest.i" conftest.c:3:10: fatal error: 'ffi.h' file not found #include ^~~~~~~ 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include /* end */ "clang -E -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe -I/usr/include/ffi conftest.c -o conftest.i" conftest.c:3:10: fatal error: 'ffi.h' file not found #include ^~~~~~~ 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include /* end */ -------------------- have_header: checking for shlwapi.h... -------------------- no "clang -E -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -o conftest.i" conftest.c:3:10: fatal error: 'shlwapi.h' file not found #include ^~~~~~~~~~~ 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include /* end */ -------------------- have_func: checking for rb_thread_call_without_gvl()... -------------------- yes "clang -o conftest -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -fstack-protector -L/usr/local/lib -lruby.2.5.1-static -framework Foundation -lpthread -lgmp -ldl -lobjc " conftest.c:13:57: error: use of undeclared identifier 'rb_thread_call_without_gvl' int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_thread_call_without_gvl; return !p; } ^ 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: /*top*/ 4: extern int t(void); 5: int main(int argc, char **argv) 6: { 7: if (argc > 1000000) { 8: printf("%p", &t); 9: } 10: 11: return 0; 12: } 13: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_thread_call_without_gvl; return !p; } /* end */ "clang -o conftest -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -fstack-protector -L/usr/local/lib -lruby.2.5.1-static -framework Foundation -lpthread -lgmp -ldl -lobjc " checked program was: /* begin */ 1: #include "ruby.h" 2: 3: /*top*/ 4: extern int t(void); 5: int main(int argc, char **argv) 6: { 7: if (argc > 1000000) { 8: printf("%p", &t); 9: } 10: 11: return 0; 12: } 13: extern void rb_thread_call_without_gvl(); 14: int t(void) { rb_thread_call_without_gvl(); return 0; } /* end */ -------------------- have_func: checking for ruby_native_thread_p()... -------------------- yes "clang -o conftest -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -fstack-protector -L/usr/local/lib -lruby.2.5.1-static -framework Foundation -lpthread -lgmp -ldl -lobjc " checked program was: /* begin */ 1: #include "ruby.h" 2: 3: /*top*/ 4: extern int t(void); 5: int main(int argc, char **argv) 6: { 7: if (argc > 1000000) { 8: printf("%p", &t); 9: } 10: 11: return 0; 12: } 13: int t(void) { void ((*volatile p)()); p = (void ((*)()))ruby_native_thread_p; return !p; } /* end */ -------------------- have_func: checking for ruby_thread_has_gvl_p()... -------------------- yes "clang -o conftest -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -fstack-protector -L/usr/local/lib -lruby.2.5.1-static -framework Foundation -lpthread -lgmp -ldl -lobjc " conftest.c:13:57: error: use of undeclared identifier 'ruby_thread_has_gvl_p' int t(void) { void ((*volatile p)()); p = (void ((*)()))ruby_thread_has_gvl_p; return !p; } ^ 1 error generated. checked program was: /* begin */ 1: #include "ruby.h" 2: 3: /*top*/ 4: extern int t(void); 5: int main(int argc, char **argv) 6: { 7: if (argc > 1000000) { 8: printf("%p", &t); 9: } 10: 11: return 0; 12: } 13: int t(void) { void ((*volatile p)()); p = (void ((*)()))ruby_thread_has_gvl_p; return !p; } /* end */ "clang -o conftest -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/brian/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/Users/brian/.rbenv/versions/2.5.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -L. -L/Users/brian/.rbenv/versions/2.5.1/lib -fstack-protector -L/usr/local/lib -lruby.2.5.1-static -framework Foundation -lpthread -lgmp -ldl -lobjc " checked program was: /* begin */ 1: #include "ruby.h" 2: 3: /*top*/ 4: extern int t(void); 5: int main(int argc, char **argv) 6: { 7: if (argc > 1000000) { 8: printf("%p", &t); 9: } 10: 11: return 0; 12: } 13: extern void ruby_thread_has_gvl_p(); 14: int t(void) { ruby_thread_has_gvl_p(); return 0; } /* end */ -------------------- extconf.h is: /* begin */ 1: #ifndef EXTCONF_H 2: #define EXTCONF_H 3: #define HAVE_RB_THREAD_CALL_WITHOUT_GVL 1 4: #define HAVE_RUBY_NATIVE_THREAD_P 1 5: #define HAVE_RUBY_THREAD_HAS_GVL_P 1 6: #define HAVE_FFI_PREP_CIF_VAR 1 7: #define USE_INTERNAL_LIBFFI 1 8: #define RUBY_1_9 1 9: #endif /* end */