我刚买了一台新的 macbook pro,正在尝试设置我的开发环境。 我从应用商店下载了 xcode 4.2 并安装了它,之后我安装了自制软件和 RVM。 ImageMagick、readline、ruby 1.9.3-head 都完美安装,直到我运行 bundle update 试图安装 rmagick。
经过很长时间的调查,我得出的结论是它找不到 libgomp。
gem install rmagick
的输出是:
$ gem install rmagick
Building native extensions. This could take a while...
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.
/Users/dhiemstra/.rvm/rubies/ruby-1.9.3-head/bin/ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
extconf.rb:128: Use RbConfig instead of obsolete and deprecated Config.
checking for clang... yes
checking for Magick-config... yes
checking for ImageMagick version >= 6.4.9... yes
checking for HDRI disabled version of ImageMagick... yes
checking for stdint.h... *** 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/dhiemstra/.rvm/rubies/ruby-1.9.3-head/bin/ruby
/Users/dhiemstra/.rvm/rubies/ruby-1.9.3-head/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
这是我的 mkmf.log 文件:
"clang -o conftest -I/Users/dhiemstra/.rvm/rubies/ruby-1.9.3-head/include/ruby-1.9.1/x86_64-darwin11.2.0 -I/Users/dhiemstra/.rvm/rubies/ruby-1.9.3-head/include/ruby-1.9.1/ruby/backward -I/Users/dhiemstra/.rvm/rubies/ruby-1.9.3-head/include/ruby-1.9.1 -I. -I/usr/local/Cellar/imagemagick/6.7.1-1/include/ImageMagick -I/usr/local/Cellar/imagemagick/6.7.1-1/include/ImageMagick -fopenmp conftest.c -L. -L/Users/dhiemstra/.rvm/rubies/ruby-1.9.3-head/lib -L/usr/local/Cellar/imagemagick/6.7.1-1/lib -L/usr/X11/lib -L/usr/local/Cellar/imagemagick/6.7.1-1/lib -lMagickCore -llcms -ltiff -lfreetype -ljpeg -L/usr/X11/lib -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lm -lgomp -lpthread -lltdl -lruby.1.9.1 -lpthread -ldl -lobjc "
ld: library not found for -lgomp
clang: error: linker command failed with exit code 1 (use -v to see invocation)
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main() {return 0;}
/* end */
现在我假设 xcode 出了点问题我尝试了几种方法:
- 重新安装 xcode
- 删除 imagemagick 并重新安装它,包括其他库,如 jpg、libpng 等
- 安装了旧版本的 imagemagick
- 删除了 .rvm 并重新安装了 ruby 的新副本
我不知道我还可以尝试什么,有人可以帮助我朝着正确的方向前进吗?
最佳答案
我尝试了您的解决方案(充满希望),但不幸的是它对我不起作用。 最后,我设法通过在没有 openmp 支持的情况下重新安装 imagemagick 使其工作(这是负责 lgomp 的库)
使用自制软件:
brew install imagemagick --disable-openmp
然后 rmagick 安装没有任何问题。
关于ruby - Mac Rmagick 无法与 Xcode 4.2 一起安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7961091/