سؤال

فشلت محاولة تثبيت جوهرة RMagick بسبب خطأ يتعلق بعدم القدرة على العثور على مكتبات ImageMagick، على الرغم من أنني متأكد من تثبيتها.

الإخراج ذو الصلة من تثبيت الجوهرة rmagick هو:

checking for InitializeMagick() in -lMagick... no
checking for InitializeMagick() in -lMagickCore... no
checking for InitializeMagick() in -lMagick++... no
Can't install RMagick 2.6.0. Can't find the ImageMagick library or one of the dependent libraries. Check the mkmf.log file for more detailed information.

*** extconf.rb failed ***

وبالبحث في mkmf.log يكشف:

have_library: checking for InitializeMagick() in -lMagick... -------------------- no

"/usr/local/bin/gcc -o conftest -I.
-I/usr/local/lib/ruby/1.8/i386-solaris2.10 -I. -I/usr/local/include/ImageMagick  -I/usr/local/include/ImageMagick  conftest.c  -L. - L/usr/local/lib -Wl,-R/usr/local/lib -L/usr/local/lib -L/usr/local/lib -R/usr/local/lib -lfreetype -lz -L/usr/local/lib   -L/usr/local/lib -lMagickCore  -lruby-static - lMagick  -ldl -lcrypt -lm   -lc"
ld: fatal: library -lMagick: not found
ld: fatal: File processing errors. No output written to conftest

هذا موجود على Solaris 10 x86 مع الإصدار 6.4.3 من ImageMagick والإصدار 2.6.0 من RMagick

إذا كنت بحاجة إلى إضافة شيء ما إلى LDFLAGS، فليس من الواضح بالنسبة لي ما هو ذلك.لقد قمت بتثبيت ImageMagick من المصدر ويجب أن يكون في الأماكن المعتادة.أي،

# ls -l  /usr/local/lib/ | grep -i magick                      
drwxr-xr-x  5 root root      512 Sep 24 23:09 ImageMagick-6.4.3/
-rw-r--r--  1 root root 10808764 Sep 25 02:09 libMagickCore.a
-rwxr-xr-x  1 root root     1440 Sep 25 02:09 libMagickCore.la*
-rw-r--r--  1 root root  2327072 Sep 25 02:09 libMagickWand.a
-rwxr-xr-x  1 root root     1472 Sep 25 02:09 libMagickWand.la*

ImageMagick-6.4.3/ لا يحتوي على أي شيء مثير للاهتمام ولا يمكنني العثور على أي ملفات أخرى قد أتمكن من الإشارة إلى تثبيت الجوهرة عليها.

أي نصيحة سيكون موضع تقدير كبير!لم يكن البحث عبر Google مفيدًا جدًا.

شكرًا -

هل كانت مفيدة؟

المحلول

تم حل المشكلة.

لم يتمكن RMagick من العثور على ImageMagick لأنني أهملت إنشاء الكائنات المشتركة (لم تكن هناك ملفات .so مثبتة كما ترون من "ls" في السؤال الأصلي).وكان الحل لإضافة --with-shared إلى خيارات التكوين الخاصة بي.

لكن هذا تسبب في مشاكل أخرى.الجدير بالذكر، make فشل مع رسائل "رمز غير محدد" لـ libiconv.تم حل هذه المشكلة عن طريق ضبط CFLAGS للإشارة إلى libiconv:

export CFLAGS="-liconv"

في النهاية، كان أمر التهيئة الناجح الخاص بي هو:

./configure --disable-static --with-modules --without-perl  --with-quantum-depth=8  --with-bzlib=no --with-libiconv

وبعد ذلك، make, make install, ، و gem install rmagick كل شيء يعمل بسلاسة.

شكرًا،

ر

نصائح أخرى

لقد واجهت هذه المشكلة على OpenSuSE 11.4 - بعد تثبيت مجموعة كاملة من الحزم، تبين أن libtool هو العنصر المفقود....

لا يمكن للرابط العثور على libMagick في الأماكن القياسية.ربما قمت بتثبيت ImageMagick في مكان غير قياسي يتعين عليك تحديده عبر LDFLAGS؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top