新的Rails项目:’bundle install’无法在gemfile中安装rails
我安装了一个新的rails项目,如下所示:
$ rails new site
并执行并达到:
bundle install
但是当我看起来尝试安装依赖项时,我得到了这个错误
Gem::Ext::BuildError: ERROR: Failed to build gem native extension. /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb checking for libkern/OSAtomic.h... yes creating Makefile make "DESTDIR=" clean make "DESTDIR=" compiling atomic_reference.c atomic_reference.c:57:59: warning: incompatible pointer types passing 'void **' to parameter of type 'volatile int64_t *' (aka 'volatile long long *') [-Wincompatible-pointer-types] if (OSAtomicCompareAndSwap64(expect_value, new_value, &DATA_PTR(self))) { ^~~~~~~~~~~~~~~ /usr/include/libkern/OSAtomic.h:507:93: note: passing argument to parameter '__theValue' here bool OSAtomicCompareAndSwap64( int64_t __oldValue, int64_t __newValue, volatile int64_t *__theValue ); ^ 1 warning generated. linking shared-object atomic_reference.bundle clang: error: unknown argument: '-multiply_definedsuppress' [-Wunused-command-line-argument-hard-error-in-future] clang: note: this will be a hard error (cannot be downgraded to a warning) in the future make: *** [atomic_reference.bundle] Error 1 make failed, exit code 2 Gem files will remain installed in /Users/mikeguppy/.bundler/tmp/26234/gems/atomic-1.1.16 for inspection. Results logged to /Users/mikeguppy/.bundler/tmp/26234/extensions/universal-darwin-13/2.0.0/atomic-1.1.16/gem_make.out An error occurred while installing atomic (1.1.16), and Bundler cannot continue. Make sure that `gem install atomic -v '1.1.16'` succeeds before bundling.
然后我尝试独立安装primefaces:
gem install atomic
再没有运气。
我在Mac OS 10.9.2上运行Ruby 2.0
任何帮助将非常感激!
这对我sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future gem install rails
: sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future gem install rails
我有同样的问题,对我来说有用的是安装RVM,安装Ruby 2.1.1(从小牛队打包的2.0升级)……
rvm get stable rvm reinstall 2.1.1
(使用最新版本,对我来说是2.1.1)
…然后运行rvm use 2.1.1
以确保我已切换到使用该版本。
之后,我的gem安装运行顺利。
这似乎是与Mavericks(2.0.0p247)打包的系统Ruby有关的问题,请参阅此处的错误详情: https ://bugs.ruby-lang.org/issues/9624
我通过安装rbenv(或RVM,如果你愿意)然后安装Ruby 2.1.1来解决这个问题,以免篡改系统Ruby版本。 在安装primefacesgem期间,您仍会收到警告,但至少不会失败。
rbenv在这里: https : //github.com/sstephenson/rbenv
安装rails时我遇到了同样的问题。 我的ruby版本是1.9.3 p448,OS是OS X Mavericks(10.9.2)。
这是我尝试过的,它的工作原理。
$ gem install rails –version 4.0.4
首先卸载任何现有的atomic
gem
gem uninstall atomic
然后使用重新安装
gem install atomic -v '1.1.16'
在此之后尝试创建一个新的rails应用程序
rails new projectname
我不知道您当前使用的是哪个版本的Rails。 有时,将Rails重新安装到稳定版本似乎有所帮助。 如果上述步骤无法解决问题,您可能也想尝试一下。
我最近遇到了类似的问题,因为Xcode自动更新为5.1。 此版本包含gcc
的错误/问题。
线索在这里:
-Wunused-command-line-argument-hard-error-in-future] clang: note: this will be a hard error (cannot be downgraded to a warning)
可悲的是,我不得不降级Xcode – 可以在这里找到 。
Ruby 2.1.5 on Maverick通过rvm安装primefaces1.1.16没有问题。
如果您使用错误的ruby版本捆绑捆绑包,则会发生此错误。 检查Gemfile以获取ruby版本,然后检查ruby -v
的输出。 如果版本不匹配,请使用rvm确保使用相同版本的ruby,然后重新捆绑。
我得到了这个确切的错误并通过更改我正在使用的ruby版本来修复它。
这些都不适合我。 我提出了自己的解决方案。 问题在于json版本小于2.0。 当我尝试升级json时,我收到有关rails和sdoc的依赖性问题的错误消息。 这是我最终做的事情:
- 打开你的Gemfile。
- 注释掉sdoc和rails的行。
- 添加以下行:
gem 'json', '> 2'
- 运行捆绑安装。
为我工作。