安装Atomic时出错

cur*_*urt 10 ruby bundler rbenv

我正在尝试使用bundle install将gem安装到我的新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.
Run Code Online (Sandbox Code Playgroud)

前两行是第一次尝试输出的结束.如您所见,然后我按要求成功安装了原子.然后我再次尝试并得到了同样的错误.我已经看到安装原子的一些错误,但没有像这样的错误.它似乎与选项-R有问题.由于我没有首先输入它,我不知道在哪里更改它.

更新

我开始将rbenv设置为版本2.0.0-p0并运行rails new jazz catalog -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.
Run Code Online (Sandbox Code Playgroud)

已解决的 叹息 - 不处理路径中的空格

web*_*guy 19

我有这个问题.事实证明这是由安装Mac OS 10.9(Mavericks)引起的,因为Mavericks有一个独立于Xcode的独立命令行工具.为了解决这个问题,我删除了/ Applications/Xcode,然后通过以下方式安装了独立的命令行工具:

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

sudo rm -rf /Applications/Xcode
xcode-select --install
Run Code Online (Sandbox Code Playgroud)

然后从OSX弹出窗口中单击"安装"

来源:http: //www.computersnyou.com/2025/2013/06/install-command-line-tools-in-osx-10-9-mavericks-how-to/

  • 我实际上没有必要删除Xcode以使其工作.第二个命令就足够了.我不明白删除Xcode ...安装命令行工具就足够了. (3认同)
  • 只是运行第二行也为我工作.奇怪的是,当你运行`xcode-select --help`时,`--install`甚至没有被列为一个选项. (3认同)
  • 您可能必须同意新的许可协议.我点'sudo gcc -v`以确保我有4.2版,然后促使我同意许可协议.'gem update'在那之后工作. (2认同)

Rez*_*emi 8

对于那些通过谷歌搜索到达此页面的人,我解决了类似的问题,同时在mac上安装atomic(1.1.13):

    sudo ln -s /usr/bin/llvm-gcc-4.2 /usr/bin/gcc-4.2
Run Code Online (Sandbox Code Playgroud)

这似乎是因为Xcode更新冲突.


cur*_*urt 4

错误消息没有提供任何关于真正问题是什么的线索。Bundler 或其调用的组件无法正确处理包含空格的目录名称。就我而言,是.../Data RAID/... 导致了问题。一旦我将项目移动到另一个驱动器,路径中就没有空格,一切都工作正常。看来问题可能只是宝石的位置。在之前的尝试中,我创建了一个项目,其中 gem 不位于包含空格的路径中,但项目位于包含空格的路径中。就我而言,它没有任何问题。另请注意,gem installatomic 已成功。