14 Nov
matte

matte il 14 November 2005 parla di Configurazioni

RMagick e Tiger su Rails

Oggi ho provato ad installare la gemma RMagick per poter elaborare le immagini tramite il Ruby on Rails. Ho trovato alcuni problemi, quindi vi posto sinteticamente i passaggi da compiere per avere il tutto funzionante.

Utilizzate port per installare le librerie GraphicsMagick all’interno del vostro sistema, con il seguente comando:

    1 sudo port install GraphicsMagick

Automaticamente verrà installato da port ogni pacchetto necessario a GraphicsMagick. Una volta completato questo passo,

    1 require 'RMagick'

Se ottente un errore le librerie non sono state compilate e installate correttamente e durante l’esecuzione del comando gem install rmagick avrete di sicuro ottenuto un errore del seguente tipo:

    1 /usr/bin/ruby /usr/local/RMagick-1.9.3/ext/RMagick/extconf.rb
    2 can't find header files for ruby.
    3 config failed
    4 'system /usr/bin/ruby /usr/local/RMagick-1.9.3/ext/RMagick/extconf.rb ' failed
    5 try 'ruby install.rb --help' for usage

Per compilarle correttamente dovete installare, se non lo avete già fatto, XCode dal primo DVD di Tiger e la gemma fxrbconfig con il comando:

    1 sudo gem install fxrbconfig

Lanciare poi il comando

    1 sudo fxrbconfig

per risolvere un bug all’interno del pacchetto del Ruby on Rails. Se lanciando il comando ottenete un errore di questo tipo:

/usr/lib/ruby/1.8/powerpc-darwin8.0/ruby.h does not exist. This probably means you haven't yet installed Xcode from the Tiger DVD. You won't be able to compile Ruby extensions without it. Please install it then rerun this program.

non è detto che il problema sia dovuto a XCode. Io ho risolto copiando i file della cartella /usr/lib/ruby/1.8/universal-darwin8.0 alla cartella /usr/lib/ruby/1.8/powerpc-darwin8.0 e poi rilanciando il precedente comando.

A questo punto rilanciando il comando

    1 sudo gem install rmagick

Avrete la gemma RMagick installata correttamente. Per provarlo, lanciate irb e scrivete require ‘RMagick’: otterrete true come risposta!!!

Scrivi un commento