Ruby 错误:无法在mac上构建gem本机扩展

Ruby 错误:无法在mac上构建gem本机扩展,ruby,terminal,rubygems,Ruby,Terminal,Rubygems,我正在尝试安装gem,但始终遇到以下错误: Building native extensions. This could take a while... ERROR: Error installing mandrill-template-manager: ERROR: Failed to build gem native extension. current directory: /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2/e

我正在尝试安装gem,但始终遇到以下错误:

Building native extensions.  This could take a while...
ERROR:  Error installing mandrill-template-manager:
    ERROR: Failed to build gem native extension.

    current directory: /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2/ext/unicode
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20170221-17481-1m13rrx.rb extconf.rb
creating Makefile

current directory: /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2/ext/unicode
make "DESTDIR=" clean

current directory: /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2/ext/unicode
make "DESTDIR="
make: *** No rule to make target `/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/universal-darwin16/ruby/config.h', needed by `unicode.o'.  Stop.

make failed, exit code 2

Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2 for inspection.
Results logged to /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-16/2.0.0/unicode-0.4.4.2/gem_make.out
我尝试了以下方法:

  • 使用http调整源文件
  • 降级红宝石
更新:运行xcode选择--安装

结果

Building native extensions.  This could take a while...
ERROR:  Error installing mandrill-template-manager:
    ERROR: Failed to build gem native extension.

    current directory: /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2/ext/unicode
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20170221-18173-nchdps.rb extconf.rb
creating Makefile

current directory: /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2/ext/unicode
make "DESTDIR=" clean

current directory: /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2/ext/unicode
make "DESTDIR="
compiling unicode.c
In file included from unicode.c:13:
In file included from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby.h:33:
In file included from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:68:
/usr/include/stdio.h:133:19: error: expected ')'
        int     (* _Nullable _close)(void *);
                             ^
/usr/include/stdio.h:133:6: note: to match this '('
        int     (* _Nullable _close)(void *);
                ^
/usr/include/stdio.h:134:19: error: expected ')'
        int     (* _Nullable _read) (void *, char *, int);
                             ^
/usr/include/stdio.h:134:6: note: to match this '('
        int     (* _Nullable _read) (void *, char *, int);
               ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [unicode.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/unicode-0.4.4.2 for inspection.
Results logged to /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-16/2.0.0/unicode-0.4.4.2/gem_make.out

错误太多,但你明白了;)

当您执行
xcode选择--install
然后重试时会发生什么情况?在我们说话的时候运行命令,看看问题它修复了一个错误让我又多了20个…问题似乎是安装了
unicode-0.4.4.2
gem。从问题中:“我意识到这是XCode捆绑的编译器等的问题。翻了一翻,我发现更新到macOS Sierra总体上搞乱了XCode。更新XCode 8修复了所有问题。所以现在这已经解决了!这是XCode在更新到macOS Sierra时出现的一些怪问题,而不是jekyll scholar。”谢谢,似乎修复了现在还必须在这里安装gem/usr/local/bin,因为在新osx中没有权限。