2017-04-12 269 views
2

我跑不过gem install json -v '1.8.1'我得到这个错误..错误安装JSON红宝石宝石

gem install json -v '1.8.1' 
Building native extensions. This could take a while... 
ERROR: Error installing json: 
    ERROR: Failed to build gem native extension. 

    current directory: /Users/johnwilliamson/.rvm/gems/ruby-2.4.1/gems/json-1.8.1/ext/json/ext/generator 
/Users/johnwilliamson/.rvm/rubies/ruby-2.4.1/bin/ruby -r ./siteconf20170412-72871-wada1h.rb extconf.rb 
creating Makefile 

current directory: /Users/johnwilliamson/.rvm/gems/ruby-2.4.1/gems/json-1.8.1/ext/json/ext/generator 
make "DESTDIR=" clean 

current directory: /Users/johnwilliamson/.rvm/gems/ruby-2.4.1/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/johnwilliamson/.rvm/rubies/ruby-2.4.1/include/ruby-2.4.0/ruby/intern.h:795:9: note: macro 'rb_str_new' defined here 
#define rb_str_new(str, len) RB_GNUC_EXTENSION_BLOCK( \ 
     ^
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)); 
     ^  ~~~~~~~~~~ 
generator.c:840:25: error: use of undeclared identifier 'rb_cFixnum' 
    } else if (klass == rb_cFixnum) { 
         ^
generator.c:842:25: error: use of undeclared identifier 'rb_cBignum' 
    } else if (klass == rb_cBignum) { 
         ^
1 warning and 3 errors generated. 
make: *** [generator.o] Error 1 

make failed, exit code 2 

Gem files will remain installed in /Users/johnwilliamson/.rvm/gems/ruby-2.4.1/gems/json-1.8.1 for inspection. 
Results logged to /Users/johnwilliamson/.rvm/gems/ruby-2.4.1/extensions/x86_64-darwin-16/2.4.0/json-1.8.1/gem_make.out 

当我运行只是创业板安装JSON它安装细带我在第2版但我想安装此https://github.com/peatio/peatio,它特别需要该版本。

还有其他想法吗?

+1

只是一个猜测:由于红宝石已经内置JSON,我不认为比赛笔者预计,只有人用一个很老的Ruby版本(1.7,也许1.8)使用宝石,和本机C接口不适用于较新的Ruby版本。请问你为什么要使用的宝石,当你在Ruby标准库中有JSON了吗? – user1934428

+0

我不想使用自己的宝石,但它是在创业板depencie我要安装并在创业板上市的文件我找不到它删除,要么:| – velua

回答

0

的问题的出现是由于你是不是在正确的目录。请到您的轨道目录文件夹,然后先运行此命令是这样的:

轨@轨:〜/ rails_project/BTC $创业板安装JSON -v“1.8.1” 那么它的做工精细。