2017-02-09 74 views
0

我正在尝试在github文件上运行软件包安装以获取有关Rails测试的教程。当我尝试运行时问题与“错误:无法构建gem本机扩展”

bundle install 

它安装了我的大部分宝石,然后给我这个很长的错误。我试图更新xcode和自制软件,但它没有帮助。任何建议将非常感激!

以下是错误:

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 

current directory: 
/Users/johnseabolt/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/json-1.7.6/ext/json/ext/generator 
/Users/johnseabolt/.rbenv/versions/2.3.1/bin/ruby -r ./siteconf20170209-69149-18f1540.rb extconf.rb 
creating Makefile 

current directory: /Users/johnseabolt/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/json-1.7.6/ext/json/ext/generator 
make "DESTDIR=" clean 

current directory: /Users/johnseabolt/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/json-1.7.6/ext/json/ext/generator 
make "DESTDIR=" 
compiling generator.c 
In file included from generator.c:1: 
./../fbuffer/fbuffer.h:179:47: error: too few arguments provided to function-like macro invocation 
VALUE result = rb_str_new(FBUFFER_PAIR(fb)); 
             ^
/Users/johnseabolt/.rbenv/versions/2.3.1/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:179: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/johnseabolt/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/json-1.7.6 for 
inspection. 
Results logged to 
/Users/johnseabolt/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-15/2.3.0-static/json-1.7.6/gem_make.out 

An error occurred while installing json (1.7.6), and Bundler cannot continue. 
Make sure that `gem install json -v '1.7.6'` succeeds before bundling. 
Johns-MacBook-Pro:expense_tracker johnseabolt$ 

下面是该应用的宝石文件我从GitHub克隆:

source 'https://rubygems.org' 

gem 'rails', '3.2.11' 

# Bundle edge Rails instead: 
# gem 'rails', :git => 'git://github.com/rails/rails.git' 

gem 'pg' 

group :development, :test do 
    gem "rspec-rails", "~> 2.0" 
end 

group :test do 
    gem 'factory_girl_rails' 
    gem 'capybara' 
end 


# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '~> 3.2.3' 
    gem 'coffee-rails', '~> 3.2.1' 

    # See https://github.com/sstephenson/execjs#readme for more supported runtimes 
    # gem 'therubyracer', :platforms => :ruby 

    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jquery-rails' 

# To use ActiveModel has_secure_password 
# gem 'bcrypt-ruby', '~> 3.0.0' 

# To use Jbuilder templates for JSON 
# gem 'jbuilder' 

# Use unicorn as the app server 
# gem 'unicorn' 

# Deploy with Capistrano 
# gem 'capistrano' 

# To use debugger 
# gem 'debugger' 
+0

您可以添加/Users/johnseabolt/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-15/2.3.0-static/json-1.7.6/ gem_make.out 所以我可以看看日志 – DominikAngerer

回答

0

尝试运行以下命令,然后运行bundle安装

gem system --update 
相关问题