ruby ruby-on-rails-4 imagemagick rmagick

ruby - No se puede instalar Rmagick en Mac 10.9.5



ruby-on-rails-4 imagemagick (1)

Traté de actualizar los rieles de 4.1.1 a 4.2.0, y luego recibí un error al instalar Rmagick. Antes de actualizar los rieles, Rmagick funcionaba bien en rails4.1.1. Lo intenté después de volver a instalar ImageMagick, pero todavía recibí un error.

Esto es lo que conseguí

sudo gem install rmagick -v 2.13.4 Building native extensions. This could take a while... ERROR: Error installing rmagick: ERROR: Failed to build gem native extension. /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb checking for Ruby version >= 1.8.5... yes checking for xcrun... yes checking for Magick-config... yes checking for ImageMagick version >= 6.4.9... yes checking for stdint.h... yes checking for sys/types.h... yes checking for wand/MagickWand.h... yes checking for snprintf() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for AcquireImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for AffinityImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for AffinityImages() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for AutoGammaImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for AutoLevelImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for BlueShiftImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for ColorMatrixImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for ConstituteComponentTerminus() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for DeskewImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for DestroyConstitute() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for EncipherImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for EqualizeImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for EvaluateImages() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for FloodfillPaintImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for FunctionImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for GetAuthenticIndexQueue() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for GetAuthenticPixels() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for GetImageAlphaChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for GetMagickFeatures() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for GetVirtualPixels() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for LevelImageColors() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for LevelColorsImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for LevelizeImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for LiquidRescaleImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for MagickLibAddendum() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for OpaquePaintImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for QueueAuthenticPixels() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for RemapImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for RemapImages() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for RemoveImageArtifact() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for RotationalBlurImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for RotationalBlurImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for SelectiveBlurImageChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for SetImageAlphaChannel() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for SetImageArtifact() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for SetMagickMemoryMethods() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for SparseColorImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for StatisticImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for SyncAuthenticPixels() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for TransformImageColorspace() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for TransparentPaintImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for TransparentPaintImageChroma() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no checking for QueryMagickColorname() new signature... yes checking for Image.type in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for DrawInfo.kerning in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for DrawInfo.interline_spacing in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for DrawInfo.interword_spacing in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for DitherMethod in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for MagickFunction in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for ImageLayerMethod in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for long double in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes checking for AlphaChannelType.CopyAlphaChannel... yes checking for AlphaChannelType.BackgroundAlphaChannel... yes checking for CompositeOperator.BlurCompositeOp... yes checking for CompositeOperator.DistortCompositeOp... yes checking for CompositeOperator.LinearBurnCompositeOp... yes checking for CompositeOperator.LinearDodgeCompositeOp... yes checking for CompositeOperator.MathematicsCompositeOp... yes checking for CompositeOperator.PegtopLightCompositeOp... yes checking for CompositeOperator.PinLightCompositeOp... yes checking for CompositeOperator.VividLightCompositeOp... yes checking for CompressionType.DXT1Compression... yes checking for CompressionType.DXT3Compression... yes checking for CompressionType.DXT5Compression... yes checking for CompressionType.ZipSCompression... yes checking for CompressionType.PizCompression... yes checking for CompressionType.Pxr24Compression... yes checking for CompressionType.B44Compression... yes checking for CompressionType.B44ACompression... yes checking for DistortImageMethod.BarrelDistortion... yes checking for DistortImageMethod.BarrelInverseDistortion... yes checking for DistortImageMethod.BilinearForwardDistortion... yes checking for DistortImageMethod.BilinearReverseDistortion... yes checking for DistortImageMethod.DePolarDistortion... yes checking for DistortImageMethod.PolarDistortion... yes checking for DistortImageMethod.PolynomialDistortion... yes checking for DistortImageMethod.ShepardsDistortion... yes checking for DitherMethod.NoDitherMethod... yes checking for FilterTypes.KaiserFilter... yes checking for FilterTypes.WelshFilter... yes checking for FilterTypes.ParzenFilter... yes checking for FilterTypes.LagrangeFilter... yes checking for FilterTypes.BohmanFilter... yes checking for FilterTypes.BartlettFilter... yes checking for FilterTypes.SentinelFilter... yes checking for MagickEvaluateOperator.PowEvaluateOperator... yes checking for MagickEvaluateOperator.LogEvaluateOperator... yes checking for MagickEvaluateOperator.ThresholdEvaluateOperator... yes checking for MagickEvaluateOperator.ThresholdBlackEvaluateOperator... yes checking for MagickEvaluateOperator.ThresholdWhiteEvaluateOperator... yes checking for MagickEvaluateOperator.GaussianNoiseEvaluateOperator... yes checking for MagickEvaluateOperator.ImpulseNoiseEvaluateOperator... yes checking for MagickEvaluateOperator.LaplacianNoiseEvaluateOperator... yes checking for MagickEvaluateOperator.MultiplicativeNoiseEvaluateOperator... yes checking for MagickEvaluateOperator.PoissonNoiseEvaluateOperator... yes checking for MagickEvaluateOperator.UniformNoiseEvaluateOperator... yes checking for MagickEvaluateOperator.CosineEvaluateOperator... yes checking for MagickEvaluateOperator.SineEvaluateOperator... yes checking for MagickEvaluateOperator.AddModulusEvaluateOperator... yes checking for MagickFunction.ArcsinFunction... yes checking for MagickFunction.ArctanFunction... yes checking for MagickFunction.PolynomialFunction... yes checking for MagickFunction.SinusoidFunction... yes checking for ImageLayerMethod.FlattenLayer... yes checking for ImageLayerMethod.MergeLayer... yes checking for ImageLayerMethod.MosaicLayer... yes checking for ImageLayerMethod.TrimBoundsLayer... yes checking for VirtualPixelMethod.HorizontalTileVirtualPixelMethod... yes checking for VirtualPixelMethod.VerticalTileVirtualPixelMethod... yes checking for VirtualPixelMethod.HorizontalTileEdgeVirtualPixelMethod... yes checking for VirtualPixelMethod.VerticalTileEdgeVirtualPixelMethod... yes checking for VirtualPixelMethod.CheckerTileVirtualPixelMethod... yes checking for ruby/io.h... yes checking for rb_frame_this_func() in ruby.h,ruby/io.h... yes creating extconf.h creating Makefile ====================================================================== Sat 31Jan15 12:34:19 This installation of RMagick 2.13.4 is configured for Ruby 2.0.0 (universal.x86_64-darwin13) and ImageMagick ====================================================================== make "DESTDIR=" compiling rmagick.c compiling rmdraw.c ~~~~~~~~~~~~~~~~~ compile some files ~~~~~~~~~~~~~~~~~ compiling rminfo.c compiling rmmain.c rmmain.c:1724:28: error: use of undeclared identifier ''MagickSupport'' features = rb_str_new2(MagickSupport); ^ /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/intern.h:760:27: note: expanded from macro ''rb_str_new_cstr'' (__builtin_constant_p(str)) ? / ^ rmmain.c:1724:28: error: use of undeclared identifier ''MagickSupport'' /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/intern.h:761:14: note: expanded from macro ''rb_str_new_cstr'' rb_str_new((str), (long)strlen(str)) : / ^ rmmain.c:1724:28: error: use of undeclared identifier ''MagickSupport'' /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/intern.h:762:18: note: expanded from macro ''rb_str_new_cstr'' rb_str_new_cstr(str); / ^ rmmain.c:1724:14: error: assigning to ''volatile VALUE'' (aka ''volatile unsigned long'') from incompatible type ''void'' features = rb_str_new2(MagickSupport); ^ 4 errors generated. make: *** [rmmain.o] Error 1 Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/rmagick-2.13.4 for inspection. Results logged to /Library/Ruby/Gems/2.0.0/gems/rmagick-2.13.4/ext/RMagick/gem_make.out

Y, estas son más infos.

ruby -v ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin13] brew info imagemagick imagemagick: stable 6.9.0-3 (bottled), HEAD http://www.imagemagick.org /usr/local/Cellar/imagemagick/6.9.0-3 (1440 files, 22M) * Poured from bottle From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/imagemagick.rb ==> Dependencies Build: xz ✔, pkg-config ✔ Required: libtool ✔, xz ✔ Recommended: jpeg ✔, libpng ✔, freetype ✔ Optional: fontconfig ✘, libtiff ✘, little-cms ✘, little-cms2 ✘, libwmf ✘, librsvg ✘, liblqr ✘, openexr ✘, ghostscript ✘, webp ✘, fftw ✘ ==> Options --enable-hdri Compile with HDRI support --with-fftw Compile with FFTW support --with-fontconfig Build with fontconfig support --with-ghostscript Build with ghostscript support --with-jp2 Compile with Jpeg2000 support --with-liblqr Build with liblqr support --with-librsvg Build with librsvg support --with-libtiff Build with libtiff support --with-libwmf Build with libwmf support --with-little-cms Build with little-cms support --with-little-cms2 Build with little-cms2 support --with-openexr Build with openexr support --with-perl enable build/install of PerlMagick --with-quantum-depth-16 Compile with a quantum depth of 16 bit --with-quantum-depth-32 Compile with a quantum depth of 32 bit --with-quantum-depth-8 Compile with a quantum depth of 8 bit --with-webp Build with webp support --with-x11 Build with x11 support --without-freetype Build without freetype support --without-jpeg Build without jpeg support --without-libpng Build without libpng support --without-magick-plus-plus disable build/install of Magick++ --HEAD Install HEAD version

Gracias de antemano


Obtuve el mismo error en OSX 10.10.2 (Yosemite) con rmagick 2.13.4. El problema ya estaba solucionado en el último código. Vea el problema a continuación.

La nueva versión, sin embargo, no se ha lanzado oficialmente todavía, así que solucioné el problema localmente con el código anterior.

$ git clone -b RMagick_2-13-4 git://github.com/gemhome/rmagick.git

Fusionó el código de corrección (reemplace el código relacionado en ext / RMagick / rmmain.c ).

#if defined(HAVE_GETMAGICKFEATURES) // 6.5.7 - latest (7.0.0) features = rb_str_new2(GetMagickFeatures()); #elif defined(MagickFeatures) // 6.5.7 - latest (7.0.0) features = rb_str_new2(MagickFeatures); #elif defined(MagickSupport) // 6.5.5 - 6.5.6 features = rb_str_new2(MagickSupport); #else features = rb_str_new("unknown",7); #endif

Y luego lo instaló.

$ cd rmagick/ $ gem build rmagick.gemspec $ gem install --local rmagick-2.13.4.gem Building native extensions. This could take a while... Successfully installed rmagick-2.13.4 1 gem installed

Espero que sea útil.