admin管理员组文章数量:1208153
I've been having problems getting sqlite3 version 1.4.2 to install on mac. I have a legacy http server application which I am trying to install the dependancies for, but bundle install keeps hanging up on sqlite3 specifically. Versions 1.3.13 and below install fine but 1.4.1 and above will not.
I've tried gem installing it with the flags --with-cflags=-Wno-error=implicit-function-declaration -Wno-error=incompatible-function-pointer-types
, which helped for previous packages the installer had a hard time with, but it hasn't worked. I have brew installed sqlite3, and no improvement. I am using an Intel mac with OS 15.1.1, xcode and command line tools are installed, ruby 2.7.2, and sqlite3 -version
gives 3.48.0. The (mostly) full output of running gem install sqlite3 -v 1.4.2
is below. Some lines in the middle were cutout due to post size limitations, hopefully not a problem as most of the middle lines seem to be repetitive.
Building native extensions. This could take a while...
ERROR: Error installing sqlite3:
ERROR: Failed to build gem native extension.
current directory: /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
/Users/fatcullen/.rbenv/versions/2.7.2/bin/ruby -I /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/2.7.0 -r ./siteconf20250118-12176-hparbb.rb extconf.rb
checking for sqlite3.h... yes
checking for pthread_create() in -lpthread... yes
checking for -ldl... yes
checking for sqlite3_libversion_number() in -lsqlite3... yes
checking for rb_proc_arity()... yes
checking for rb_integer_pack()... yes
checking for sqlite3_initialize()... yes
checking for sqlite3_backup_init()... yes
checking for sqlite3_column_database_name()... yes
checking for sqlite3_enable_load_extension()... yes
checking for sqlite3_load_extension()... yes
checking for sqlite3_open_v2()... yes
checking for sqlite3_prepare_v2()... yes
checking for sqlite3_int64 in sqlite3.h... yes
checking for sqlite3_uint64 in sqlite3.h... yes
creating Makefile
current directory: /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
make "DESTDIR=" clean
current directory: /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
make "DESTDIR="
compiling aggregator.c
aggregator.c:74:22: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:74:22: note: '{' token is here
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:74:22: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:74:22: note: ')' token is here
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:141:23: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:141:23: note: '{' token is here
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:141:23: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:141:23: note: ')' token is here
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:159:25: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:159:25: note: '{' token is here
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:159:25: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:159:25: note: ')' token is here
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:219:33: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:219:33: note: '{' token is here
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:219:33: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:219:33: note: ')' token is here
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:220:47: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
aggregator.c:220:47: note: '{' token is here
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
aggregator.c:220:47: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
aggregator.c:220:47: note: ')' token is here
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
aggregator.c:235:30: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
235 | if (!rb_ivar_defined(self, rb_intern("-aggregators"))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:235:30: note: '{' token is here
235 | if (!rb_ivar_defined(self, rb_intern("-aggregators"))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
database.c:116:21: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
116 | rb_funcall(thing, rb_intern("call"), 1, rb_str_new2(sql));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^ ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:150:37: note: '{' token is here
150 | VALUE result = rb_funcall(handle, rb_intern("call"), 1, INT2NUM((long)count));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:150:37: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
150 | VALUE result = rb_funcall(handle, rb_intern("call"), 1, INT2NUM((long)count));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:150:37: note: ')' token is here
150 | VALUE result = rb_funcall(handle, rb_intern("call"), 1, INT2NUM((long)count));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:299:31: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
database.c:299:31: note: '{' token is here
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
database.c:299:31: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
database.c:299:31: note: ')' token is here
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
database.c:441:39: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:441:39: note: '{' token is here
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:441:39: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:441:39: note: ')' token is here
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: note: '{' token is here
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: note: ')' token is here
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:726:57: error: incompatible function pointer types passing 'int (VALUE, int, char **, char **)' (aka 'int (unsigned long, int, char **, char **)') to parameter of type 'int (*)(void *, int, char **, char **)' [-Wincompatible-function-pointer-types]
726 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), hash_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:430:9: note: passing argument to parameter 'callback' here
430 | int (*callback)(void*,int,char**,char**), /* Callback function */
| ^
database.c:726:81: error: incompatible integer to pointer conversion passing 'VALUE' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion]
726 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), hash_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:431:9: note: passing argument to parameter here
431 | void *, /* 1st argument to callback */
| ^
database.c:728:57: error: incompatible function pointer types passing 'int (VALUE, int, char **, char **)' (aka 'int (unsigned long, int, char **, char **)') to parameter of type 'int (*)(void *, int, char **, char **)' [-Wincompatible-function-pointer-types]
728 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), regular_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:430:9: note: passing argument to parameter 'callback' here
430 | int (*callback)(void*,int,char**,char**), /* Callback function */
| ^
database.c:728:84: error: incompatible integer to pointer conversion passing 'VALUE' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion]
728 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), regular_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:431:9: note: passing argument to parameter here
431 | void *, /* 1st argument to callback */
| ^
11 warnings and 4 errors generated.
make: *** [database.o] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2 for inspection.
Results logged to /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/extensions/x86_64-darwin-24/2.7.0/sqlite3-1.4.2/gem_make.out
I've been having problems getting sqlite3 version 1.4.2 to install on mac. I have a legacy http server application which I am trying to install the dependancies for, but bundle install keeps hanging up on sqlite3 specifically. Versions 1.3.13 and below install fine but 1.4.1 and above will not.
I've tried gem installing it with the flags --with-cflags=-Wno-error=implicit-function-declaration -Wno-error=incompatible-function-pointer-types
, which helped for previous packages the installer had a hard time with, but it hasn't worked. I have brew installed sqlite3, and no improvement. I am using an Intel mac with OS 15.1.1, xcode and command line tools are installed, ruby 2.7.2, and sqlite3 -version
gives 3.48.0. The (mostly) full output of running gem install sqlite3 -v 1.4.2
is below. Some lines in the middle were cutout due to post size limitations, hopefully not a problem as most of the middle lines seem to be repetitive.
Building native extensions. This could take a while...
ERROR: Error installing sqlite3:
ERROR: Failed to build gem native extension.
current directory: /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
/Users/fatcullen/.rbenv/versions/2.7.2/bin/ruby -I /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/2.7.0 -r ./siteconf20250118-12176-hparbb.rb extconf.rb
checking for sqlite3.h... yes
checking for pthread_create() in -lpthread... yes
checking for -ldl... yes
checking for sqlite3_libversion_number() in -lsqlite3... yes
checking for rb_proc_arity()... yes
checking for rb_integer_pack()... yes
checking for sqlite3_initialize()... yes
checking for sqlite3_backup_init()... yes
checking for sqlite3_column_database_name()... yes
checking for sqlite3_enable_load_extension()... yes
checking for sqlite3_load_extension()... yes
checking for sqlite3_open_v2()... yes
checking for sqlite3_prepare_v2()... yes
checking for sqlite3_int64 in sqlite3.h... yes
checking for sqlite3_uint64 in sqlite3.h... yes
creating Makefile
current directory: /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
make "DESTDIR=" clean
current directory: /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
make "DESTDIR="
compiling aggregator.c
aggregator.c:74:22: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:74:22: note: '{' token is here
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:74:22: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:74:22: note: ')' token is here
74 | handler_klass, rb_intern("new"), 0, NULL, &exc_status));
| ^~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:141:23: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:141:23: note: '{' token is here
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:141:23: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:141:23: note: ')' token is here
141 | handler_instance, rb_intern("step"), argc, params, &exc_status);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:159:25: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:159:25: note: '{' token is here
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:159:25: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:159:25: note: ')' token is here
159 | handler_instance, rb_intern("finalize"), 0, NULL, &exc_status);
| ^~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:219:33: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:219:33: note: '{' token is here
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
aggregator.c:219:33: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
aggregator.c:219:33: note: ')' token is here
219 | if (rb_respond_to(aggregator, rb_intern("arity"))) {
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:220:47: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
aggregator.c:220:47: note: '{' token is here
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
aggregator.c:220:47: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
aggregator.c:220:47: note: ')' token is here
220 | VALUE ruby_arity = rb_funcall(aggregator, rb_intern("arity"), 0);
| ^~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
aggregator.c:235:30: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
235 | if (!rb_ivar_defined(self, rb_intern("-aggregators"))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
aggregator.c:235:30: note: '{' token is here
235 | if (!rb_ivar_defined(self, rb_intern("-aggregators"))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
database.c:116:21: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
116 | rb_funcall(thing, rb_intern("call"), 1, rb_str_new2(sql));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^ ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:150:37: note: '{' token is here
150 | VALUE result = rb_funcall(handle, rb_intern("call"), 1, INT2NUM((long)count));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:150:37: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
150 | VALUE result = rb_funcall(handle, rb_intern("call"), 1, INT2NUM((long)count));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:150:37: note: ')' token is here
150 | VALUE result = rb_funcall(handle, rb_intern("call"), 1, INT2NUM((long)count));
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:299:31: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
database.c:299:31: note: '{' token is here
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
database.c:299:31: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
database.c:299:31: note: ')' token is here
299 | result = rb_apply(callable, rb_intern("call"), params);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
database.c:441:39: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:441:39: note: '{' token is here
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:441:39: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:441:39: note: ')' token is here
441 | VALUE result = rb_funcall(callback, rb_intern("call"), 5, action, a, b, c, d);
| ^~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:23: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: note: '{' token is here
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1832:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1832 | { \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:24: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1837:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
1837 | }
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:538:39: note: ')' token is here
538 | comparison = rb_funcall(comparator, rb_intern("compare"), 2, a_str, b_str);
| ^~~~~~~~~~~~~~~~~~~~
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:1847:56: note: expanded from macro 'rb_intern'
1847 | __extension__ (RUBY_CONST_ID_CACHE((ID), (str))) : \
| ^
/Users/fatcullen/.rbenv/versions/2.7.2/include/ruby-2.7.0/ruby/ruby.h:2689:27: note: expanded from macro 'rb_funcall'
2689 | rb_funcallv(recv, mid, \
| ^~~
database.c:726:57: error: incompatible function pointer types passing 'int (VALUE, int, char **, char **)' (aka 'int (unsigned long, int, char **, char **)') to parameter of type 'int (*)(void *, int, char **, char **)' [-Wincompatible-function-pointer-types]
726 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), hash_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:430:9: note: passing argument to parameter 'callback' here
430 | int (*callback)(void*,int,char**,char**), /* Callback function */
| ^
database.c:726:81: error: incompatible integer to pointer conversion passing 'VALUE' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion]
726 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), hash_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:431:9: note: passing argument to parameter here
431 | void *, /* 1st argument to callback */
| ^
database.c:728:57: error: incompatible function pointer types passing 'int (VALUE, int, char **, char **)' (aka 'int (unsigned long, int, char **, char **)') to parameter of type 'int (*)(void *, int, char **, char **)' [-Wincompatible-function-pointer-types]
728 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), regular_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:430:9: note: passing argument to parameter 'callback' here
430 | int (*callback)(void*,int,char**,char**), /* Callback function */
| ^
database.c:728:84: error: incompatible integer to pointer conversion passing 'VALUE' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion]
728 | status = sqlite3_exec(ctx->db, StringValuePtr(sql), regular_callback_function, callback_ary, &errMsg);
| ^~~~~~~~~~~~
/usr/local/opt/sqlite/include/sqlite3.h:431:9: note: passing argument to parameter here
431 | void *, /* 1st argument to callback */
| ^
11 warnings and 4 errors generated.
make: *** [database.o] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sqlite3-1.4.2 for inspection.
Results logged to /Users/fatcullen/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/extensions/x86_64-darwin-24/2.7.0/sqlite3-1.4.2/gem_make.out
Share
Improve this question
edited Jan 21 at 14:18
FATCullen
asked Jan 19 at 11:20
FATCullenFATCullen
113 bronze badges
2
- Did you install xcode and the command line tools? – max Commented Jan 21 at 6:20
- @max Yup, both are installed. Forgot to mention that in the post. – FATCullen Commented Jan 22 at 2:43
1 Answer
Reset to default 0Figured it out, there was another flag to add. Buried deep in the log file behind all the warnings there was one integer-conversion error, so adding an ignore flag to this solved the problem. Full command was: gem install sqlite3 -v 1.4.2 -- --with-cflags="--with-cflags=-g -O0 -std=c11 -Wno-error=implicit-function-declaration -Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion"
本文标签: rubyCannot install the gem sqlite3 version 142 on MacStack Overflow
版权声明:本文标题:ruby - Cannot install the gem sqlite3 version 1.4.2 on Mac - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1738740547a2109822.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论