2009-10-07 15 views
12

sto ottenendo il seguente errore nel mio development.logPaperclip errore

[graffetta] è stato ricevuto un errore durante l'elaborazione: # < Paperclip :: NotIdentifiedByImageMagickError:/tmp/stream28514-0 non viene riconosciuto dal ' identificare' il comando>

e googled su questo errore e ho scoperto che molte persone hanno risolto questo con l'aggiunta di questa linea Paperclip.options. [: command_path] = '/ usr/local/bin'

Tuttavia, ho ancora lo stesso errore anche dopo aver aggiunto quella linea! Ho provato tutto il possibile!

Qualsiasi aiuto sarebbe molto apprezzato!

saluti,

Punit

+0

Quale sistema operativo stai utilizzando?/usr/local/bin ha senso solo su un sistema basato su Unix. – Karl

+0

sì, sono su ubuntu –

risposta

11

I Paperclip.options [: command_path] impostazione è per la posizione dei file eseguibili ImageMagick (in questo caso identificare). Prova a eseguire which identify e imposta l'opzione come directory che viene restituita. Se tale comando non restituisce nulla, assicurarsi che ImageMagick sia installato correttamente.

+1

Ehi, grazie per la tua risposta. che identificano i resi/usr/local/bin Inoltre ho notato qualcosa di strano. Il percorso/tmp/stream28514-0 non è valido. Quindi il file non viene salvato.Qualcuno sa perché questo sta accadendo? –

+0

paperclip dovrebbe rimuovere i file dopo averli elaborati. Provare a eseguire l'identificazione dalla riga di comando? Ho avuto un problema simile di recente quando ho aggiornato ImageMagick e ho dimenticato di eseguire ldconfig in seguito. – tliff

3

vuol dire che non è possibile trovare file eseguibile di ImageMagick identify sulla posizione specificata in Paperclip.options[:command_path] (nel tuo caso /usr/local/bin).

Questo è tipicamente causata da due motivi:

  1. Potrebbe essere che in realtà non hai installato ImageMagick.
    • SOLUZIONE: installarlo:
      • Per MAC: sudo port install ImageMagick (che installa il rilascio binario)
      • per Ubuntu: sudo sudo apt-get install imagemagick
  2. Potrebbe essere che il luogo in cui hai installato ImageMagick non è /usr/local/bin ma qualcos'altro.

    • SOLUZIONE: trovare in cui è installato, o tramite il comando:

      which identify (nel caso che identificano è nel percorso corrente, come dovrebbe essere)

    o tramite una scoperta prima attraverso il file system:

    find/-name identify

In ogni caso, la posizione usuale per coloro file in Ubuntu dovrebbe essere /usr/bin

5

Ecco cosa ha funzionato per me ...

Ho disinstallato l'imagemagick che ho installato dalla pagina web ufficiale. ho reinstallato da sudo apt-get installare imagemagick

poi ho scritto Paperclip.options [: command_path] = "a/correggere/path"

il problema qui ERA ...

quando Ho funzionato "che identifica" il fatto che il percorso fosse "usr/local/bin/identify" significa che dovevamo inserire come percorso "usr/local/bin" come percorso.

MA NON HA FUNZIONATO!

Ho sorprendentemente scoperto che identifico era anche nel percorso "usr/bin". Così ho cambiato: "/ local/bin usr" per "usr/bin"

E questo è tutto!

+0

L'ho già installato, ma reinstallarlo tramite 'brew upgrade ImageMagick' lo ha risolto per me. Non avevo nemmeno bisogno dell'opzione 'command_path' –

0

usr/bin me ha funzionato (Fedora 14 core)

0

provare a eseguire il comando identificano nella riga di comando e vedere se questo ti dà qualche messaggio di errore. Ho scoperto che al mio server mancavano alcune librerie delegate.

identify example.jpg 
2

ci sono due possibili problemi:

  1. ImageMagick non è installato o rotto
  2. Paperclip non è in grado di trovare ImageMagick

Diamo loro uno alla volta :

1. Verifica di avere Image Magick installe d e si sta lavorando

Tipo:

identify 

nella riga di comando, dovrebbe funzionare. Se non viene trovato o non funziona, installa Image Magick. L'ha risolto? In caso contrario, continuano:

2. Aiuto Paperclip trovare ImageMagick

Tipo:

which identify 

nella riga di comando per ottenere il percorso al comando identificare. Ora, in production.rb, aggiungere la seguente riga al blocco di configurazione:

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

Riavviare il server. Questo dovrebbe risolverlo.

Problemi correlati