2012-05-22 19 views
8

Ok, ho installato imagemagick sul mio computer locale tramite homebrew e Gemfile.lock mostra la graffetta bloccata alla versione paperclip (3.0.4).Paperclip non trova imagemagick

Per le istruzioni di configurazione, ho impostato il seguente comando in development.rb

Paperclip.options[:command_path] = "/usr/local/bin/" 

Quali allinea con quello che dice il terminale

$ which identify 
    # => /usr/local/bin/identify 

Tuttavia, quando provo a caricare un'immagine, il seguente errore sputa sul mio modulo

/var/folders/dm/lnshrsls2zz6l4r_tkbk7j2w0000gn/T/avatar20120522-44111-gfis2q.jpg is not recognized by the 'identify' command. 

Quale ogni domanda SO posso trovare sulla questione suggerisce che il problema è che Paperclip non riesce a trovare l'identità nel suo percorso di comando.

Ho usato il generatore di Paperclip per aggiungere l'avatar al mio database, e il mio modello ha:

has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" } 

Inoltre, se carico fino rails c e guardo Paperclip.options, posso vedere il percorso comando ha stato correttamente impostato nell'hash.

Non so bene cosa fare a questo punto. Qualsiasi aiuto sarebbe apprezzato.

+0

fa il comando identificare effettivamente eseguito dal prompt dei comandi? per esempio. $ identifica -versione – Ivan

+0

Restituisce 'dyld: Libreria non caricata: /usr/local/lib/libtiff.3.dylib Riferimento a:/usr/local/bin/identificativo Motivo: immagine non trovata Trappola trace/BPT: 5' – DVG

+0

Sai se hai/usr/local/lib' incluso per il tuo ld.so conf? se esegui Ubuntu (e probabilmente altre dists Linux), assicurati che '/ usr/local/lib' sia in qualche file in'/etc/ld.so.conf.d' (per default usa le 'libc' per includerlo , se non l'ho aggiunto manualmente, non ricordo). Quindi lancia "ldconfig" come root e riavvia il web server. –

risposta

10

Sono contento che l'esecuzione del comando ti abbia avviato sulla strada giusta.

Il problema era che il vostro ImageMagick è stato compilato per l'architettura sbagliato:

dyld: Library not loaded: /usr/local/lib/libtiff.3.dylib Referenced from: /usr/local/bin/identify Reason: image not found Trace/BPT trap 

disinstallazione ImageMagick, l'aggiornamento e la reinstallazione homebrew che fosse la cosa giusta da fare.

+3

Per me 'brew update && brew upgrade imagemagick' ha fatto il trucco. –

0

Non sono sicuro di quale fosse il problema esatto, tuttavia ho disinstallato Image Magick, aggiornato Homebrew e reinstallato imagemagick e ora tutto funziona.

4

Solo nel caso, ho reso il lavoro con questo trucco:

ln -s /usr/local/Cellar/libtiff/3.9.5/lib/libtiff.3.dylib /usr/local/lib/libtiff.3.dylib 

e sta lavorando come fascino :)