tenderlove / gda

A SQL parser. It wraps libgda
68 stars 12 forks source link

Can't install gda gem nor compile on a Mac M2 #16

Open paterlinimatias opened 1 year ago

paterlinimatias commented 1 year ago

Environment: Macbook Pro 16 - Apple M2 Max

Repro steps: brew install pkg-config libgda bundle install gem install hoe rake-compiler rake

Result: [matias] ~/Projects/gda (master) $ rake
cd tmp/arm64-darwin22/gda/3.1.3 /Users/matias/.asdf/installs/ruby/3.1.3/bin/ruby -I. -r.rake-compiler-siteconf.rb ../../../../ext/gda/extconf.rb checking for libgda/sql-parser/gda-sql-parser.h... no checking for libgda/sql-parser/gda-sql-parser.h... no libgda is missing. Try 'brew install pkg-config libgda' if you are on OSX and have homebrew installed. You can also check https://github.com/GNOME/libgda for more info on how to install the dependency. ../../../../ext/gda/extconf.rb failed Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options.

Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=../../../../ext/gda --curdir --ruby=/Users/matias/.asdf/installs/ruby/3.1.3/bin/$(RUBY_BASE_NAME) --with-libgda-dir --without-libgda-dir --with-libgda-include --without-libgda-include=${libgda-dir}/include --with-libgda-lib --without-libgda-lib=${libgda-dir}/lib --with-libgda-5.0-dir --without-libgda-5.0-dir --with-libgda-5.0-include --without-libgda-5.0-include=${libgda-5.0-dir}/include --with-libgda-5.0-lib --without-libgda-5.0-lib=${libgda-5.0-dir}/lib --with-libgda-5.0-config --without-libgda-5.0-config --with-pkg-config --without-pkg-config --with-libgda-6.0-dir --without-libgda-6.0-dir --with-libgda-6.0-include --without-libgda-6.0-include=${libgda-6.0-dir}/include --with-libgda-6.0-lib --without-libgda-6.0-lib=${libgda-6.0-dir}/lib --with-libgda-6.0-config --without-libgda-6.0-config --with-pkg-config --without-pkg-config rake aborted! Command failed with status (1): [/Users/matias/.asdf/installs/ruby/3.1.3/bi...]

Tasks: TOP => default => compile => compile:arm64-darwin22 => compile:gda:arm64-darwin22 => copy:gda:arm64-darwin22:3.1.3 => tmp/arm64-darwin22/gda/3.1.3/gda.bundle => tmp/arm64-darwin22/gda/3.1.3/Makefile (See full trace by running task with --trace)

paterlinimatias commented 1 year ago

Same issue if I try to run gem install gda

Result: [matias] ~/Projects/gda (master) $ gem install gda Building native extensions. This could take a while... ERROR: Error installing gda: ERROR: Failed to build gem native extension.

current directory: /Users/matias/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/gems/gda-1.1.4/ext/gda

/Users/matias/.asdf/installs/ruby/3.1.3/bin/ruby -I /Users/matias/.asdf/installs/ruby/3.1.3/lib/ruby/3.1.0 extconf.rb checking for libgda/sql-parser/gda-sql-parser.h... no checking for libgda/sql-parser/gda-sql-parser.h... no libgda is missing. Try 'brew install libgda' if you are on OSX and have homebrew installed. You can also check https://github.com/GNOME/libgda for more info on how to install the dependency. extconf.rb failed Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options.

Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=/Users/matias/.asdf/installs/ruby/3.1.3/bin/$(RUBY_BASE_NAME) --with-libgda-dir --without-libgda-dir --with-libgda-include --without-libgda-include=${libgda-dir}/include --with-libgda-lib --without-libgda-lib=${libgda-dir}/lib --with-libgda-5.0-dir --without-libgda-5.0-dir --with-libgda-5.0-include --without-libgda-5.0-include=${libgda-5.0-dir}/include --with-libgda-5.0-lib --without-libgda-5.0-lib=${libgda-5.0-dir}/lib --with-libgda-5.0-config --without-libgda-5.0-config --with-pkg-config --without-pkg-config --with-libgda-6.0-dir --without-libgda-6.0-dir --with-libgda-6.0-include --without-libgda-6.0-include=${libgda-6.0-dir}/include --with-libgda-6.0-lib --without-libgda-6.0-lib=${libgda-6.0-dir}/lib --with-libgda-6.0-config --without-libgda-6.0-config --with-pkg-config --without-pkg-config

To see why this extension failed to compile, please check the mkmf.log which can be found here:

/Users/matias/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/extensions/arm64-darwin-22/3.1.0/gda-1.1.4/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /Users/matias/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/gems/gda-1.1.4 for inspection. Results logged to /Users/matias/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/extensions/arm64-darwin-22/3.1.0/gda-1.1.4/gem_make.out

paterlinimatias commented 1 year ago

mkmf log:

[matias] ~/Projects/gda (master) $ cat /Users/matias/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/extensions/arm64-darwin-22/3.1.0/gda-1.1.4/mkmf.log package configuration for libgda-5.0 is not found find_header: checking for libgda/sql-parser/gda-sql-parser.h... -------------------- no

DYLD_FALLBACK_LIBRARY_PATH=.:/Users/matias/.asdf/installs/ruby/3.1.3/lib "clang -o conftest -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/arm64-darwin22 -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/backward -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0 -I. -I/Users/matias/.asdf/installs/ruby/3.1.3/include -I/opt/homebrew/opt/gmp/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -fdeclspec -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wold-style-definition -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -Wundef -fno-common -pipe conftest.c -L. -L/Users/matias/.asdf/installs/ruby/3.1.3/lib -L. -L/Users/matias/.asdf/installs/ruby/3.1.3/lib -fstack-protector-strong -L/opt/homebrew/opt/gmp/lib -L/usr/local/lib -lruby.3.1 " checked program was: / begin / 1: #include "ruby.h" 2: 3: int main(int argc, char *argv) 4: { 5: return !!argv[argc]; 6: } / end */

DYLD_FALLBACK_LIBRARY_PATH=.:/Users/matias/.asdf/installs/ruby/3.1.3/lib "clang -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/arm64-darwin22 -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/backward -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0 -I. -I/Users/matias/.asdf/installs/ruby/3.1.3/include -I/opt/homebrew/opt/gmp/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -fdeclspec -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wold-style-definition -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -Wundef -fno-common -pipe -c conftest.c" conftest.c:3:10: fatal error: 'libgda/sql-parser/gda-sql-parser.h' file not found

include <libgda/sql-parser/gda-sql-parser.h>

     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1 error generated. checked program was: / begin / 1: #include "ruby.h" 2: 3: #include <libgda/sql-parser/gda-sql-parser.h> / end /


package configuration for libgda-6.0 is not found find_header: checking for libgda/sql-parser/gda-sql-parser.h... -------------------- no

DYLD_FALLBACK_LIBRARY_PATH=.:/Users/matias/.asdf/installs/ruby/3.1.3/lib "clang -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/arm64-darwin22 -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/backward -I/Users/matias/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0 -I. -I/Users/matias/.asdf/installs/ruby/3.1.3/include -I/opt/homebrew/opt/gmp/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -fdeclspec -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wold-style-definition -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -Wundef -fno-common -pipe -c conftest.c" conftest.c:3:10: fatal error: 'libgda/sql-parser/gda-sql-parser.h' file not found

include <libgda/sql-parser/gda-sql-parser.h>

     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1 error generated. checked program was: / begin / 1: #include "ruby.h" 2: 3: #include <libgda/sql-parser/gda-sql-parser.h> / end /