Je viens de créer une migration simple vers un projet existant. Ce projet utilise RMagick, et quand je l'appelle rake db: migrate la migration échoue ainsi:rake db: migrate échoue: à la recherche de RMagick - pourquoi?
Dans-iMac-335:myserver apple$ rake db:migrate
(in /Users/apple/Documents/projects/electionjoy/glowing-mist-78)
dlopen(/Users/apple/.gem/ruby/1.8/gems/rmagick-2.12.1/lib/RMagick2.bundle, 9): Library not loaded: /usr/local/libpng/lib/libpng12.0.dylib
Referenced from: /Users/apple/.gem/ruby/1.8/gems/rmagick-2.12.1/lib/RMagick2.bundle
Reason: image not found - /Users/apple/.gem/ruby/1.8/gems/rmagick-2.12.1/lib/RMagick2.bundle
/Users/apple/.gem/ruby/1.8/gems/rmagick-2.12.1/lib/RMagick2.bundle
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
/Users/apple/.gem/ruby/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb:153:in `require'
/Users/apple/.gem/ruby/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb:521:in `new_constants_in'
/Users/apple/.gem/ruby/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb:153:in `require'
/Users/apple/.gem/ruby/1.8/gems/rmagick-2.12.1/lib/RMagick.rb:11
Il y a plus, mais c'est là où il cherche RMagick. Le bundle existe à cet endroit.
Pourquoi une migration de base de données nécessite-t-elle la présence de la gemme RMagick? Et quelle est la solution à ce problème? J'utilise Rails 2.2.2 sur Mac OS X 10.6, voici la liste des pierres précieuses locales:
* GEMS LOCAL *
actionmailer (2.3.8, 2.3.5, 2.2.2)
actionpack (2.3.8, 2.3.5, 2.2.2)
actionwebservice (1.2.3)
activemerchant (1.5.1)
activerecord (2.3.8, 2.3.5, 2.2.2)
activerecord-tableless (0.1.0)
activeresource (2.3.8, 2.3.5, 2.3.3, 2.2.2)
activesupport (2.3.8, 2.3.5, 2.3.3, 2.2.2)
authlogic (2.1.5)
authlogic-oid (1.0.4)
aws-s3 (0.6.2)
builder (2.1.2)
capistrano (2.5.9)
cgi_multipart_eof_fix (2.5.0)
chronic (0.2.3)
configuration (1.1.0)
daemons (1.0.10)
facebooker (1.0.62)
faker (0.3.1)
fastthread (1.0.7)
gem_plugin (0.2.3)
google-geocode (1.2.1)
heroku (1.8.5, 1.3.0, 1.0.1)
highline (1.5.1)
hoe (2.3.3)
hpricot (0.8.1)
json (1.1.9)
json_pure (1.2.4, 1.1.9)
launchy (0.3.3)
less (1.2.20)
libxml-ruby (1.1.3)
mime-types (1.16)
minitest (1.4.2)
mongrel (1.1.5)
mutter (0.5.3)
mysql (2.8.1)
net-scp (1.0.2)
net-sftp (2.0.2)
net-ssh (2.0.15)
net-ssh-gateway (1.0.1)
nokogiri (1.3.3)
packet (0.1.15)
paperclip (2.3.1.1)
passenger (2.2.5)
pg (0.9.0, 0.8.0)
polyglot (0.3.1)
postgres (0.7.9.2008.01.28)
rack (1.1.0, 1.0.1, 1.0.0)
radiant (0.8.1)
rails (2.3.8, 2.3.5, 2.2.2)
rake (0.8.7)
rc-rest (3.0.0)
RedCloth (4.2.3)
rest-client (1.3.1, 1.0.3)
rmagick (2.13.1, 2.12.1)
ruby-openid (2.1.7)
rubyforge (2.0.4, 2.0.2)
rubygems-update (1.3.7, 1.3.5)
searchlogic (2.3.5)
sequel (3.0.0)
sinatra (0.9.2)
spree (0.10.2)
sqlite3-ruby (1.2.5, 1.0.1)
state_machine (0.8.0)
stringex (1.0.3)
taps (0.2.26, 0.2.19)
thor (0.9.9)
treetop (1.4.8)
whenever (0.3.7)
will_paginate (2.3.11)
xml-simple (1.0.12)
L'environnement Rails entier n'est-il pas chargé lorsque l'application s'exécute également? Il fonctionne sans problèmes, mais il meurt sur rake db: migrate. Solution: désactivez les références à rmagick dans environment.rb lors de la migration ... –
Le lien vers le script est rompu. –