GraphicsMagick execute make failed, Undefined

Help
2012-04-25
2013-03-27
  • Jian Jun Cui
    Jian Jun Cui
    2012-04-25

    I am trying to install GraphicsMagick in Xcode4, I am getting this error when i execute command 'make'.

    /usr/bin/ranlib: file: magick/.libs/libGraphicsMagick.a(magick_libGraphicsMagick_la-module.o) has no symbols
    /usr/bin/ranlib: file: magick/.libs/libGraphicsMagick.a(magick_libGraphicsMagick_la-PreRvIcccm.o) has no symbols
    libtool: link: ranlib magick/.libs/libGraphicsMagick.a
    ranlib: file: magick/.libs/libGraphicsMagick.a(magick_libGraphicsMagick_la-module.o) has no symbols
    ranlib: file: magick/.libs/libGraphicsMagick.a(magick_libGraphicsMagick_la-PreRvIcccm.o) has no symbols

    Undefined symbols for architecture x86_64:
      "___builtin_object_size", referenced from:
          _BlurImageScanlines.omp_fn.6 in libGraphicsMagick.a(magick_libGraphicsMagick_la-effect.o)
          _XShearImage.omp_fn.0 in libGraphicsMagick.a(magick_libGraphicsMagick_la-shear.o)
          _YShearImage.omp_fn.1 in libGraphicsMagick.a(magick_libGraphicsMagick_la-shear.o)
    ld: symbol(s) not found for architecture x86_64
    collect2: ld returned 1 exit status
    make: ***  Error 1
    make: ***  Error 2

     
  • This problem would likely come from mixing LLVM and GCC-compiled code, such as attempting to link GCC-compiled code with the LLVM linker.  Regardless, I see several postings on the net related to working-around this issue.  This one suggests that building with Clang rather than LLVM-GCC will achieve a successful build:

    https://github.com/justinclift/homebrew/commit/5e66aa07bf51e669d5d3b4672136129eca2fa980

     
  • Jian Jun Cui
    Jian Jun Cui
    2012-04-27

    Hi bfriesen, thanks for your suggestion, i try to follow the link you provided, but i cann't find "graphicsmagick.rb" file in my mac.

     
  • I don't know what graphicsmagick.rb is but I assume that it has something to do with the 'brew' or 'homebrew' package builder system for the Mac.  I don't have an Intel Mac system here to test with (or knowledge of Xcode) so I suggest finding a forum which caters to building Intel Mac software.  Google clearly shows that the problem you encountered has been encountered by others, and successfully resolved.  Apparently Xcode4 provides both the Clang and LLVM-GCC compiler drivers..

     
  • Ken
    Ken
    2012-09-10

    Since this is first google result, I post my solution here
    ./configure CC=clang

    HTH

     
  • Jian Jun Cui
    Jian Jun Cui
    2012-09-10

    I works!  Solved my problem, i've already given up. Thanks a lot!!!

     
  • Jian Jun Cui
    Jian Jun Cui
    2012-09-10

    Although there is one warning generated, but it still successfully installed. Hope this warning won't cause any problems. Anyway thanks for solving my problem again.

    coders/png.c:1344:1: warning: function declared 'noreturn' should not return
         
    }
    ^
    1 warning generated.

     
  • The png.c warning is totally benign.  It seems that the trick I used to keep GCC from warning is not working for your version of clang (it does work for other clang).

     
  • Glenn Lawrence
    Glenn Lawrence
    2013-01-24

    I can confirm that I also needed to use clang to get GM to build. Thanks kenshao for showing how it is done.

    Platform: Mac OS X 10.7.5 (Lion) Xcode version 4.3.3
    GM version: Latest head from Mercurial repo as at 24th Jan 2013

    It seems that since version 4.2 of Xcode the original GCC is no longer distributed and there seems to be some incompatibility with the default llvm-gcc

    This blog post gives a good overview of issues with compiler versions in recent updates to Xcode