Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
下载rails-C不会编译_C_Ruby_Macos_Ruby On Rails 4 - Fatal编程技术网

下载rails-C不会编译

下载rails-C不会编译,c,ruby,macos,ruby-on-rails-4,C,Ruby,Macos,Ruby On Rails 4,我正在尝试下载rails,并且已经完成了我能找到的所有解决方案。我重新下载了Xcode 7.0 beta版,并单独安装了命令行工具,包括运行: xcode选择-安装 这似乎适用于大多数有同样问题的人。我想我可能损坏了C头文件 checking if the C compiler accepts ... *** extconf.rb failed *** 非常感谢您的帮助 完整错误代码: XXX-MacBook-Pro-2:~ XXX$ gem install rails Building na

我正在尝试下载rails,并且已经完成了我能找到的所有解决方案。我重新下载了Xcode 7.0 beta版,并单独安装了命令行工具,包括运行: xcode选择-安装 这似乎适用于大多数有同样问题的人。我想我可能损坏了C头文件

checking if the C compiler accepts ... *** extconf.rb failed ***
非常感谢您的帮助

完整错误代码:

XXX-MacBook-Pro-2:~ XXX$ gem install rails
Building native extensions.  This could take a while...
ERROR:  Error installing rails:
    ERROR: Failed to build gem native extension.

/Users/XXX/.rvm/rubies/ruby-2.2.1/bin/ruby -r ./siteconf20150923-10275-18xpyzg.rb extconf.rb
checking if the C compiler accepts ... *** 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/XXX/.rvm/rubies/ruby-2.2.1/bin/$(RUBY_BASE_NAME)
--help
--clean
/Users/XXX/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/mkmf.rb:456:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
from /Users/XXX/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/mkmf.rb:571:in `block in try_compile'
from /Users/XXX/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/mkmf.rb:522:in `with_werror'
from /Users/XXX/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/mkmf.rb:571:in `try_compile'
from extconf.rb:80:in `nokogiri_try_compile'
from extconf.rb:87:in `block in add_cflags'
from /Users/XXX/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/mkmf.rb:619:in `with_cflags'
from extconf.rb:86:in `add_cflags'
from extconf.rb:337:in `<main>'

extconf failed, exit code 1

Gem files will remain installed in /Users/XXX/.rvm/gems/ruby-2.2.1/gems/nokogiri-1.6.6.2 for inspection.
Results logged to /Users/XXX/.rvm/gems/ruby-2.2.1/extensions/x86_64-darwin-14/2.2.0-static/nokogiri-1.6.6.2/gem_make.out

我相信这条线表明这不是Rails的问题,而是nokogiri的问题

Gem files will remain installed in /Users/XXX/.rvm/gems/ruby-2.2.1/gems/nokogiri-1.6.6.2 for inspection.

nokogiri在OS X上安装时遇到问题。试试看。

这似乎确实是nokogiri的问题,因为gem install nokogiri出现了错误,这与我遇到的所有堆栈交换答案一致-我尝试了其中20个,并花了几个小时来解决这个问题

在哪里可以找到mkmf.log文件

以下是我在gem中拥有的:

activesupport-4.2.4         nokogiri-1.6.6.2
i18n-0.7.0              nokogiri-1.6.7.rc3
mini_portile-0.5.3          rails-deprecated_sanitizer-1.0.3
mini_portile-0.6.2          thread_safe-0.3.5
mini_portile-0.7.0.rc4          tree-0.2.1
minitest-5.8.1              tzinfo-1.2.2
nokogiri-1.6.1

在Ubuntu 14.04上尝试以下操作:

sudo-apt-get-install-libgmp-dev


在这之后,您应该能够继续进行捆绑安装。

我在过去两周尝试运行rails 3版本应用程序时遇到了相同的问题

问题是rvm/rbenv没有使用C编译器

rvm使用此命令获取兼容的C编译器

因此,如果您使用的是Ruby 1.9.3,请这样使用它

CC=gcc rvm install-1.9.3
每次无法捆绑安装或执行任何操作时,请使用此命令。 这个东西正在ElCapitan、rails 3.2.16、ruby 1.9.3和mysql 5.7上运行
希望它能解决这个问题。

Homebrew或其他OS X软件包管理器可以在Mac上安装开源软件,从而减轻大部分痛苦。您可以添加mkmf.log的内容吗?你也在运行自制软件吗?如果是,brew列表| grep libxml2的输出是什么?是nokogiri失败了吗?该gem有。有关详细信息,请查看mkmf.log文件。
CC=gcc rvm install-1.9.3