Padrino (ruby) fails on bundle install
spuder opened this issue · 2 comments
spuder commented
Use ruby 2.3.0 installed using RVM on mac
$ bundle install
Fetching gem metadata from https://rubygems.org/..........
Fetching rake 10.3.2
Installing rake 10.3.2
Fetching i18n 0.6.9
Installing i18n 0.6.9
Fetching json 1.8.1
Installing json 1.8.1 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /Users/sowen/.rvm/gems/ruby-2.3.0/gems/json-1.8.1/ext/json/ext/generator
/Users/sowen/.rvm/rubies/ruby-2.3.0/bin/ruby -r ./siteconf20180207-17793-moicv3.rb extconf.rb
creating Makefile
current directory: /Users/sowen/.rvm/gems/ruby-2.3.0/gems/json-1.8.1/ext/json/ext/generator
make "DESTDIR=" clean
current directory: /Users/sowen/.rvm/gems/ruby-2.3.0/gems/json-1.8.1/ext/json/ext/generator
make "DESTDIR="
compiling generator.c
In file included from generator.c:1:
./../fbuffer/fbuffer.h:175:47: error: too few arguments provided to function-like macro invocation
VALUE result = rb_str_new(FBUFFER_PAIR(fb));
^
/Users/sowen/.rvm/rubies/ruby-2.3.0/include/ruby-2.3.0/ruby/intern.h:797:9: note: macro 'rb_str_new' defined here
#define rb_str_new(str, len) __extension__ ( \
^
In file included from generator.c:1:
./../fbuffer/fbuffer.h:175:11: warning: incompatible pointer to integer conversion initializing 'VALUE' (aka
'unsigned long') with an expression of type 'VALUE (const char *, long)' (aka 'unsigned long (const char *, long)')
[-Wint-conversion]
VALUE result = rb_str_new(FBUFFER_PAIR(fb));
^ ~~~~~~~~~~
1 warning and 1 error generated.
make: *** [generator.o] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/sowen/.rvm/gems/ruby-2.3.0/gems/json-1.8.1 for inspection.
Results logged to /Users/sowen/.rvm/gems/ruby-2.3.0/extensions/x86_64-darwin-17/2.3.0/json-1.8.1/gem_make.out
An error occurred while installing json (1.8.1), and Bundler cannot continue.
Make sure that `gem install json -v '1.8.1'` succeeds before bundling.
In Gemfile:
padrino was resolved to 0.12.2, which depends on
padrino-admin was resolved to 0.12.2, which depends on
padrino-core was resolved to 0.12.2, which depends on
padrino-support was resolved to 0.12.2, which depends on
activesupport was resolved to 4.1.1, which depends on
json
$ ruby --version
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin17]
Cosaquee commented
hi @spuder. I checked on my computer and can confirm this problem. I tried to track which dependency is causing problem. I managed to correctly run bundle install with those changes in Gemfile
gem 'json', '~> 2.1'
gem 'padrino', '~> 0.14.2'
The problem right now is the dm-types
gem.
/Users/karolkozakowski/.rvm/gems/ruby-2.3.0/gems/bundler-1.16.1/lib/bundler/runtime.rb:84:in `rescue in block (2 levels) in require': There was an error while trying to load the gem 'dm-types'. (Bundler::GemRequireError)
Last release of dm-types
was on: August 02, 2012 so it is possible that something is not working with newer Ruby versions.
I managed to make it run but after loading /
I now have:
DEBUG - TEMPLATE (0.0043s) /user/signin.html
EBUG - TEMPLATE (0.0003s) /layouts/user.html
2018-02-08 08:28:40 - NoMethodError - undefined method `gsub' for {}:Hash:
I will try to debug it more at home but you can try to update gems and see if it will help.
spuder commented
rm Gemfile.lock
bundle install
fixed the issue for me