Domanda

Tentare di installare la gemma di RMagick non riesce con un errore di non riuscire a trovare le librerie ImageMagick, anche se sono sicuro che siano installate.

L'output pertinente di gem install 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 ***

E guardando in mkmf.log rivela:

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

Questo è su Solaris 10 x86 con ImageMagick versione 6.4.3 e RMagick versione 2.6.0

Se devo aggiungere qualcosa a LDFLAGS, non mi è chiaro quale sarebbe. Ho installato ImageMagick dal sorgente e dovrebbe essere nei soliti posti. vale a dire,

# 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 / non contiene nulla di interessante e non riesco a trovare altri file su cui potrei essere in grado di indicare l'installazione gem.

Qualsiasi consiglio sarebbe molto apprezzato !! googling non è stato di grande aiuto.

grazie -

È stato utile?

Soluzione

problema risolto.

RMagick non è stato in grado di trovare ImageMagick perché ho trascurato di creare gli oggetti condivisi (non c'erano file .so installati come puoi vedere dalla domanda "ls" nella domanda originale). La soluzione era aggiungere --with-shared alle mie opzioni di configurazione.

Ciò tuttavia ha causato altri problemi. In particolare, make non riesce con " simbolo indefinito " messaggi per libiconv. Ciò è stato risolto impostando CFLAGS in modo che puntasse a libiconv:

export CFLAGS="-liconv"

Alla fine, il mio comando configure riuscito è stato:

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

e successivamente make , make install e gem install rmagick hanno funzionato senza problemi.

grazie,

R

Altri suggerimenti

Ho riscontrato questo problema su OpenSuSE 11.4 - dopo aver installato un intero carico di pacchetti si è scoperto che libtool era l'elemento mancante ....

Il linker non riesce a trovare libMagick nei posti standard. Forse hai installato ImageMagick in un posto non standard che devi specificare tramite LDFLAGS?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top