我正在尝试安装RMagick以在Rails应用程序中使用它,但是我遇到了一些问题。
我正在将Rails 5与使用rvm安装的Ruby 2.3.1一起使用。操作系统是OSX 10.6,我已经使用macports安装了ImageMagick。
当Bundler尝试安装RMagick gem时,我可以看到安装失败,并且在日志中可以看到以下结果:
find_executable: checking for clang... -------------------- yes
find_executable: checking for Magick-config... -------------------- yes
configure_compile_options: checking for outdated ImageMagick version (<= 6.4.9)... no
Detected ImageMagick version: 6.9.5
configure_compile_options: checking for presence of MagickWand API (ImageMagick version >= 6.9.0)... no
Detected 6.9+ version, using MagickWand API
assert_minimum_ruby_version!: checking for Ruby version >= 1.8.5... yes
"clang -o conftest -I/Users/jonny/.rvm/rubies/ruby-2.3.1/include/ruby-2.3.0/x86_64-darwin10.0
-I/Users/jonny/.rvm/rubies/ruby-2.3.1/include/ruby-2.3.0/ruby/backward
-I/Users/jonny/.rvm/rubies/ruby-2.3.1/include/ruby-2.3.0 -I.
-fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16
-fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16
-I/opt/local/include/ImageMagick-6 -fopenmp -DMAGICKCORE_HDRI_ENABLE=0
-DMAGICKCORE_QUANTUM_DEPTH=16 -fopenmp -DMAGICKCORE_HDRI_ENABLE=0
-DMAGICKCORE_QUANTUM_DEPTH=16
-I/opt/local/include/ImageMagick-6 conftest.c -L.
-L/Users/jonny/.rvm/rubies/ruby-2.3.1/lib -L/opt/local/lib
-L/opt/local/lib -lMagickWand-6.Q16 -lMagickCore-6.Q16
-L/opt/local/lib -lMagickWand-6.Q16 -lMagickCore-6.Q16
-lruby.2.3.0 -lpthread -lgmp -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(int argc, char **argv)
4: {
5: return 0;
6: }
/* end */
有人有解决问题的办法吗?
我自己解决了这个问题。出现问题是因为较旧版本的clang不支持openmp,因此我们必须安装较新的版本。
使用macports,我安装了启用Openmp版本的clang另一个版本。
sudo port install clang-3.7 +openmp
安装后,我使用命令检查了安装的clang的名称
sudo port select --list clang
新的clang安装名称为mp-clang-3.7,因此在控制台中键入
sudo port select --set clang mp-clang-3.7
选择正确的版本。
之后,我可以使用捆绑包正确安装RMagick。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句