Kończąc stawianie swojej maszyny deweloperskiej (a raczej testując przeniesiony z locala na nią kod), napotkałem na taki oto błąd:
Flag /tmp/stream.2341.0 is not recognized by the 'identify' command.
Dzieje się tak dlatego, że Passenger nie wiem gdzie znajduje się ImageMagick. Jest szansa - tak jak w moim przypadku, że po prostu go nie było, zatem:
sudo apt-get install imagemagick
Polecenie to zainstaluje nam całą bibliotekę ImageMagick. Jednak nie jest to jeszcze koniec naszych problemów.
Musimy zrestartować Apache:
sudo /etc/init.d/apache2 restart
Niestety sam Restart nie rozwiązał naszego problemu. Mamy bibliotekę jednak Railsy i Passenger najprawdopodobniej wciąż nie wiedzą gdzie ona jest.
Część poradników mówi aby umieścić ten kod:
Paperclip.options[:command_path] = '/usr/bin' Paperclip.options[:image_magick_path] = '/usr/bin'
W pliku environments/production.rb, sprawi to jednak że w środowisku deweloperskim i produkcyjnym kod nie zadziała.
Ja polecam wstawić powyższy kod na samym końcu pliku: environment.rb.
Po tym wykonujemy jeszcze jeden restart Apache:
sudo /etc/init.d/apache2 restart
I cieszymy się działającym Paperclipem :)
July 8, 2010 — 16:25
Walczyłem kiedyś z tym samym komunikatem, ale problem był nieco inny i powyższe rady nie pomagały. Notorycznie instalował mi się imagemagick bez obsługi png. Poniżej link jak to zwalczyć:
http://yarb.pl/post/696993469/imagemagick-png-problem
July 8, 2010 — 16:30
Ciekawa sprawa, jaki OS? Obecne wersje imagemagicka z repo działają z PNG normalne (niedawno testowałem). Dla sprostowania dodam tylko że jeśli błąd opisany występuje tzn że najprawdopodobniej coś jest nie tak z imagemagickiem (jego brak lub jakaś ‘dziwna’ wersja).