Ich hatte eine funktionierende (und gut funktionierende) ImageScience-Installation, die eine einfache Größenanpassung von Bildern an verschiedene Dimensionen ermöglichte und sie dann in verschiedene Verzeichnisse kopierte. Alles sehr einfach. Diese kleine und einfache Routine befand sich in einem Rake-Task. Nach dem Update auf Rails 3 funktioniert dieser Rake-Task immer noch (es macht einige AR-Einfügungen und Audio-Encoding sowie), aber die image_science erfordern scheitert mit einer Meldung wie diese,
"require on /home//.ruby_inline/Inline_ImageScience_cdab.so failed"
Ich habe eine fehlerhafte ImageScience-Installation ausgeschlossen, da ich in IRB einige einfache Aufrufe an ImageScience vornehmen und Miniaturansichten erstellen kann. Der Rest der Rake-Aufgabe funktioniert genauso gut wie vorher, wenn ich jeden Hinweis auf die Notwendigkeit von "image_science" oder die ImageScience-Routine auskommentiere.
die Ausgabe von rake bei einem Fehler ist diese,
/var/lib/gems/1.8/gems/RubyInline-3.8.6/lib/inline.rb:513:in `load'
/var/lib/gems/1.8/gems/RubyInline-3.8.6/lib/inline.rb:829:in `inline'
/var/lib/gems/1.8/gems/image_science-1.2.1/lib/image_science.rb:90
...
<active_support complaints >
...
/home/<user>/RailsApps/marlow/lib/tasks/flac_import.rake:2
...
<rails complaints>
...
/home/<user>/RailsApps/marlow/Rakefile:7
...
<standard complaints to end>
das Rakefile in der Rails-App Root ist ein Standard Rails 3 Rakefile, wie dieses,
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
require File.expand_path('../config/application', __FILE__)
require 'rake'
Marlow::Application.load_tasks
die letzte Zeile ist Zeile 7.
Ich bin etwas ratlos, woran es liegt, und Google scheint nichts zu finden. Weiß jemand, warum RubyInline sich beschwert? Oder warum dieser einst funktionierende Rake-Task plötzlich unglücklich ist, wie ImageScience aufgerufen wird? OS ist Ubuntu 10.10, aber es war alles funktioniert vor dem Rails 3 Upgrade.
Vielen Dank im Voraus