Make fails on linux-based NAS device

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
Post Reply
pewang
Posts: 4
Joined: 2013-04-22T15:43:09-07:00
Authentication code: 6789

Make fails on linux-based NAS device

Post by pewang »

Am trying to install latest stable version of IM on a Synology NAS device with linux-based system, "make" fails, here is the last bit of it:


CCLD utilities/animate
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `log'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sqrt'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `cosh'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `ceil'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `logf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `floor'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sqrtf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `cosf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `fmod'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `cos'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `tanh'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sin'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `atan2'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `pow'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sinh'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `log10'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `exp'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `tan'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `atan'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `asin'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sinf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `ceilf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `expf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `floorf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `acos'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `hypot'
collect2: ld returned 1 exit status
make[2]: *** [utilities/animate] Error 1
make[2]: Leaving directory `/volume1/web/ImageMagick-6.8.5-3'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/volume1/web/ImageMagick-6.8.5-3'
make: *** [all] Error 2

Any help greatly appreciated
Jeremi
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: Make fails on linux-based NAS device

Post by magick »

Add -lm to your command line to link the math library. Not sure why its not doing that automatically. It works for us for CentOS, Fedora, Redhat Linux, MacOS X, Cygwin, etc..
pewang
Posts: 4
Joined: 2013-04-22T15:43:09-07:00
Authentication code: 6789

Re: Make fails on linux-based NAS device

Post by pewang »

Thanks for the prompt reply
have tried
make -lm
still i get

Code: Select all

make  all-recursive
make[1]: Entering directory `/volume1/web/ImageMagick-6.8.5-3'
Making all in .
make[2]: Entering directory `/volume1/web/ImageMagick-6.8.5-3'
  CCLD     utilities/animate
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `log'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sqrt'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `cosh'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `ceil'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `logf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `floor'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sqrtf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `cosf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `fmod'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `cos'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `tanh'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sin'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `atan2'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `pow'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sinh'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `log10'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `exp'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `tan'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `atan'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `asin'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `sinf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `ceilf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `expf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `floorf'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `acos'
magick/.libs/libMagickCore-6.Q16.so: undefined reference to `hypot'
collect2: ld returned 1 exit status
make[2]: *** [utilities/animate] Error 1
make[2]: Leaving directory `/volume1/web/ImageMagick-6.8.5-3'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/volume1/web/ImageMagick-6.8.5-3'
make: *** [all] Error 2
:(
I am trying to get it installed on a Synology NAS device, it has it's own proprietary linux-based os.
Thanks for the help
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: Make fails on linux-based NAS device

Post by magick »

You need to edit Makefile and add it there. Is it already associated with MATH_LIBS? How 'bout MAGICK_DEP_LIBS? -lm means add the math library to the linker command. The unresolved methods you posted are all in the system math library.
pewang
Posts: 4
Joined: 2013-04-22T15:43:09-07:00
Authentication code: 6789

Re: Make fails on linux-based NAS device

Post by pewang »

My apologies, i'm really new to all this,
I've added
-lm
to both
MATH_LIBS = (which was empty)
and to
MAGICK_DEP_LIBS=
which already had
-ljpeg -lbz2 and -lz
then tried "make" again with no success, same response. Would it be possible that i'm missing some libraries, since i'm using this Synology proprietary linux distro?
Thanks again
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: Make fails on linux-based NAS device

Post by magick »

Try 'make clean' followed by 'make'. If that fails, we can't help. We do not have access to your Linux OS to determine why its failing to build.
pewang
Posts: 4
Joined: 2013-04-22T15:43:09-07:00
Authentication code: 6789

Re: Make fails on linux-based NAS device

Post by pewang »

Actually now it's a different kind of fail... it seems

Code: Select all

  CCLD     utilities/animate
/opt/lib/gcc/powerpc-linux-gnuspe/3.4.6/../../../../powerpc-linux-gnuspe/lib/libm.so: undefined reference to `__adddf3@GLIBC_2.3.3'
/opt/lib/gcc/powerpc-linux-gnuspe/3.4.6/../../../../powerpc-linux-gnuspe/lib/libm.so: undefined reference to `__muldf3@GLIBC_2.3.3'
/opt/lib/gcc/powerpc-linux-gnuspe/3.4.6/../../../../powerpc-linux-gnuspe/lib/libm.so: undefined reference to `__fixunsdfsi@GLIBC_2.3.3'
/opt/lib/gcc/powerpc-linux-gnuspe/3.4.6/../../../../powerpc-linux-gnuspe/lib/libm.so: undefined reference to `__floatsidf@GLIBC_2.3.3'
/opt/lib/gcc/powerpc-linux-gnuspe/3.4.6/../../../../powerpc-linux-gnuspe/lib/libm.so: undefined reference to `__extendsfdf2@GLIBC_2.3.3'
/opt/lib/gcc/powerpc-linux-gnuspe/3.4.6/../../../../powerpc-linux-gnuspe/lib/libm.so: undefined reference to `__subdf3@GLIBC_2.3.3'
collect2: ld returned 1 exit status
make[2]: *** [utilities/animate] Error 1
make[2]: Leaving directory `/volume1/web/ImageMagick-6.8.5-3'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/volume1/web/ImageMagick-6.8.5-3'
make: *** [all] Error 2
If it's still nothing you can help with no prob, thanks anyways, i'll try elsewhere
Jeremi
Post Reply