Foo*_*hap 2 ruby rake ruby-on-rails dbmigrate ruby-on-rails-3.2

我刚刚在我的旧Mac书上设置我的rails环境并遇到了这个错误.我已经安装了FFI和rb-inotify.我也再次运行了bundle install.我看了看
https://github.com/ffi/ffi/issues/66
和
https://groups.google.com/forum/?fromgroups=#!topic/ruby-ffi/gj3_k34o80k
这两个都表明这是一个特定于Linux的API.有人建议在第二个链接中说我应该删除那些宝石以及依赖它的东西,但是我对删除似乎依赖它的FFI犹豫不决.
您建议采取什么行动?对此事的任何建议都非常感谢.
编辑:我正在运行rails 3.2.7(今晚更新到3.2.11).
编辑2:我发现了这个:Rubygems:如何添加特定于平台的依赖?.这有用吗?
编辑3:你认为它可能与rbenv有关吗?
编辑4:我将我的开发gem从rb-inotify更改为rb-fsevent,运行bundle install然后执行db:migrate.

它继续运行迁移.
嗯......我问我的团队成员使用macs尝试执行rake db:migrate,因为我们的Linux开发人员将rb-inotify添加到我们的gem集中.
此链接可能对以这种方式提供帮助的人有所帮助:https://supportbee.com/devblog/2012/07/18/using-platform-dependent-gems-rb-inotify-and-rb-fsevent/
编辑5:我一直在看卫兵宝石,特别是这部分:

我添加了这个,它将执行rake db:migrate,但我仍然得到一个非常类似的错误列表:
Could not open library 'libgtk-x11-2.0': dlopen(libgtk-x11-2.0, 13): image not found.
Run Code Online (Sandbox Code Playgroud)
我想我正在进步到一个完整的解决方案!
编辑7:看看这个stackoverflow问题是由于libnotify gem导致的其余错误:升级到Rails 3.1后图像未找到错误,如何修复?.它建议这样做:
gem 'libnotify' if /linux/ =~ RUBY_PLATFORM
gem 'growl' if /darwin/ =~ RUBY_PLATFORM
Run Code Online (Sandbox Code Playgroud)
Foo*_*hap 12
基本上,我团队中的某些人添加了一些特定于Linux的安装.要解决此问题,请执行以下操作:
对于rb-inotify内容,请执行以下操作:
group :development do
gem 'rb-inotify', :require => false
gem 'rb-fsevent', :require => false
gem 'rb-fchange', :require => false
end
Run Code Online (Sandbox Code Playgroud)
如果您有libnotify,请执行以下操作:
gem 'libnotify' if /linux/ =~ RUBY_PLATFORM
gem 'growl' if /darwin/ =~ RUBY_PLATFORM
Run Code Online (Sandbox Code Playgroud)
为我工作,快乐编码!
| 归档时间: |
|
| 查看次数: |
2507 次 |
| 最近记录: |