Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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
Ruby 安装Atomic时出错_Ruby_Bundler_Rbenv - Fatal编程技术网

Ruby 安装Atomic时出错

Ruby 安装Atomic时出错,ruby,bundler,rbenv,Ruby,Bundler,Rbenv,我正在尝试使用bundle安装将gems安装到我的新Ruby项目中。我已经在OS X 10.8.4上使用rbenv设置了Ruby的版本。我得到以下错误: An error occurred while installing atomic (1.1.13), and Bundler cannot continue. Make sure that `gem install atomic -v '1.1.13'` succeeds before bundling. Kikime:jazzcatalog

我正在尝试使用bundle安装将gems安装到我的新Ruby项目中。我已经在OS X 10.8.4上使用rbenv设置了Ruby的版本。我得到以下错误:

An error occurred while installing atomic (1.1.13), and Bundler cannot continue.
Make sure that `gem install atomic -v '1.1.13'` succeeds before bundling.
Kikime:jazzcatalog curt$ gem install atomic
Building native extensions.  This could take a while...
Successfully installed atomic-1.1.13
1 gem installed
Kikime:jazzcatalog curt$ rbenv rehash
Kikime:jazzcatalog curt$ bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/..
Using rake (10.1.0) 
Using i18n (0.6.5) 
Using minitest (4.7.5) 
Using multi_json (1.7.9) 
Installing atomic (1.1.13) 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

/Users/curt/.rbenv/versions/2.0.0-p247/bin/ruby extconf.rb 
/Users/curt/.rbenv/versions/2.0.0-p247/bin/ruby: invalid option -R  (-h will show valid       options) (RuntimeError)


Gem files will remain installed in /Volumes/Data     RAID/htdocs/jazzcatalog/vendor/bundle/gems/atomic-1.1.13 for inspection.
Results logged to /Volumes/Data RAID/htdocs/jazzcatalog/vendor/bundle/gems/atomic- 1.1.13/ext/gem_make.out

An error occurred while installing atomic (1.1.13), and Bundler cannot continue.
Make sure that `gem install atomic -v '1.1.13'` succeeds before bundling.
前两行是第一次尝试输出的结尾。如您所见,我随后根据请求成功安装了atomic。然后我再试了一次,得到了同样的错误。我见过一些安装atomic的错误,但没有一个像这样。选项-R似乎有问题。因为我没有首先输入它,我不知道在哪里更改它

更新

我开始将rbenv设置为2.0.0-p0版,并运行rails新的jazz目录-d mysql。它死在同一个地方,出现了以下错误:

Installing atomic (1.1.13)

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

/Users/curt/.rbenv/versions/2.0.0-p0/bin/ruby extconf.rb 
creating Makefile

make
compiling atomic_reference.c
 atomic_reference.c:50:9: warning: implicit declaration of function  'OSAtomicCompareAndSwap64' is invalid in C99 [-Wimplicit-function-declaration]
if (OSAtomicCompareAndSwap64(expect_value, new_value, &DATA_PTR(self))) {
    ^
1 warning generated.
linking shared-object atomic_reference.bundle

make install
/usr/bin/install -c -m 0755 atomic_reference.bundle /Volumes/Data   RAID/htdocs/jazzcatalog/vendor/bundle/gems/atomic-1.1.13/lib
usage: install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
           [-o owner] file1 file2
   install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
           [-o owner] file1 ... fileN directory
   install -d [-v] [-g group] [-m mode] [-o owner] directory ...
make: *** [install-so] Error 64


Gem files will remain installed in /Volumes/Data     RAID/htdocs/jazzcatalog/vendor/bundle/gems/atomic-1.1.13 for inspection.
Results logged to /Volumes/Data RAID/htdocs/jazzcatalog/vendor/bundle/gems/atomic- 1.1.13/ext/gem_make.out
An error occurred while installing atomic (1.1.13), and Bundler cannot continue.
Make sure that `gem install atomic -v '1.1.13'` succeeds before bundling.
已解决
叹气-不处理路径中的空格

错误消息没有给出任何关于真正问题的线索。Bundler或它调用的组件不能正确处理包含空格的目录名。在我的例子中,它是…/Data-RAID/。。。这就造成了问题。一旦我将项目转移到另一个驱动器,在那里路径上没有空间,一切都很顺利。似乎只有宝石的位置才是问题所在。在之前的一次尝试中,我创建了一个项目,其中gems不位于包含空格的路径中,但该项目位于其中。据我所知,它没有任何问题。另外请注意,gem安装atomic是成功的。

对于那些通过谷歌搜索进入此页面的用户,我在mac上安装atomic(1.1.13)时解决了一个类似的问题,方法如下:

    sudo ln -s /usr/bin/llvm-gcc-4.2 /usr/bin/gcc-4.2

这似乎是由于Xcode更新冲突造成的。

如果您试图在Mac/OSX上安装Atomic(或捆绑更新,但在Atomic上失败),则需要为您使用的任何操作系统版本安装或更新Xcode命令行工具


如上所述,但我觉得这个答案有点深奥。Atomic需要这些多线程工具

我收到了相同的错误消息,它似乎是由我的GEM文件中的一行(看似无害但错误的)引起的。正确使用时(在使用RVM的系统上),这两行应该能够使用正确版本的Ruby和所需的gemset

ruby '2.0.0'
#ruby-gemset=railstut_rails_4_0 ; ruby-2.0.0-p247@railstut_rails_4_0
我的印象是,我只是在第二行添加了一条注释——然而RVM(按设计/预期)创建了一个名为“*railstut_rails_4_0;ruby-2.0.0”的新gemset-p247@railstut_rails_4_0*“有空格和特殊字符。每次我运行bundle安装时——即使在我更改了Gemfile中的名称之后——RVM都会加载当前错误的gemset。为了解决这个问题,我做了以下工作:

  • $rvm使用ruby-2.0.0-p247@railstut_rails_4_0
  • 更新Gemfile:以下两行中的前两行用于RVM设置;然后是供个人参考的评论:

    ruby“2.0.0”
    #ruby gemset=railstut\u rails\u 4\u 0
    #ruby-2.0.0-p247@railstut_rails_4_0

  • 捆绑安装--无需生产

  • 包更新
  • 捆绑安装

  • 我有这个问题。事实证明,这是安装MacOS10.9(Mavericks)造成的,因为Mavericks有一个与Xcode分离的新的独立命令行工具。为了解决这个问题,我删除了/Applications/Xcode,然后通过以下方式安装了独立的命令行工具:

    注意:可能不需要第一行,请参见下面的注释

    sudo rm -rf /Applications/Xcode
    xcode-select --install
    
    然后从OSX弹出窗口中单击“安装”

    资料来源:

    对于那些通过谷歌搜索来到这里的人:我遇到了类似于atomic 1.1.14的东西

    在我的例子中,实际上是Avast(反病毒程序)不允许我执行特定于原子的文件


    通过从Avast中排除该文件,然后再次运行
    gem install-atomic-v'1.1.14'
    ,解决了这个问题

    我正在使用Mac OS Lion,为了解决这个问题,我安装了新的命令行工具。 步骤:打开XCode->下载->安装命令行工具。
    仅此而已。

    这100%与路径中的空格有关。它抛出的错误显示了尝试的安装路径。讨厌的错误

    感谢您提供您的解决方案。调试不是一个容易的问题。升级到Mavericks后,我不得不重新创建这个链接。我以前的simplink是到/usr/bin/llvm-gcc-4.2,我不得不修改它,使它指向/usr/bin/llvm-gcc(注意缺少4.2后缀)。这听起来像是这个问题:虽然它说它在2.0.0中得到了修复。可能类似。我的问题是Rails,它是一个独立的应用程序。我不知道这两个开发组之间是否有紧密的联系,也不知道应用程序之间是否共享代码。对于此类问题,应该有一个StackWTF版本。万分感谢您@curt您可能不得不同意新的许可协议。我对sudogcc-v进行了兰德
    sudogcc-v
    ,以确保我有4.2版,然后它提示我同意许可协议“宝石更新”在那之后就开始工作了。@BlakeErickson我想当我完成这些步骤时,我不需要签署任何协议。也许我以前签署过它。同样,我也不得不运行sudogcc-v来接受许可协议。被困了几个小时,你们救了我。谢谢。实际上我不需要删除Xcode就可以让它工作。第二个命令就足够了。我不明白删除Xcode的意义。。。安装命令行工具就足够了。只运行第二行对我来说也很有用。奇怪的是,当您运行
    xcode选择--help
    时,
    --install
    甚至没有作为选项列出。