耙分贝:迁移错误(功能“inotify_init”未找到)(rake db:migrate erro

2019-08-06 15:21发布

我只是做了我的旧Mac书设置我的Rails环境,就遇到了这个错误。 我已经安装FFI和RB-inotify的。 我也跑了包重新安装。 我已经看了

https://github.com/ffi/ffi/issues/66

https://groups.google.com/forum/?fromgroups=#!topic/ruby-ffi/gj3_k34o80k

这都表明,这是一个Linux特有的API。 有上说,我应该只是删除该宝石和东西依赖于它的那些链接的第二个建议,但我很犹豫,除去FFI这似乎依赖于它。

你认为什么样的行动? 在这个问题上的任何意见是极大的赞赏。

编辑:我的运转轨道3.2.7(更新至3.2.11今晚)。

编辑2:我发现这一点: RubyGems的:如何添加特定于平台的依赖? 。 这是有帮助吗?

编辑3:你认为它可能是与rbenv?

编辑4:我改变了我的发展宝石从RB-的inotify到RB-fsevent,跑捆绑安装那时分贝:迁移。

并继续运行迁移。

嗯...我要问的是空调使用试图执行耙分贝我的团队成员:迁移,因为我们的Linux开发者添加的RB-的inotify我们的宝石一套。

此链接可能会有所帮助的人谁谈到这样: https://supportbee.com/devblog/2012/07/18/using-platform-dependent-gems-rb-inotify-and-rb-fsevent/

编辑5:我一直在寻找的后卫宝石 ,特别是这部分:

我加了这一点,它会执行耙分贝:迁移,但我仍然得到错误非常类似的列表:

Could not open library 'libgtk-x11-2.0': dlopen(libgtk-x11-2.0, 13): image not found.

我想我发展到一个完整的解决方案!

编辑7:看看对于剩余的错误这个计算器的问题是由于libnotify宝石: 没有找到图片错误升级到Rails 3.1之后,如何解决? 。 这表明这样做:

gem 'libnotify' if /linux/ =~ RUBY_PLATFORM
gem 'growl' if /darwin/ =~ RUBY_PLATFORM

Answer 1:

从本质上讲,有人在我的球队加入了一些东西Linux的具体安装。 为了解决这个问题,做到以下几点:

对于RB-inotify的东西,这样做:

group :development do
  gem 'rb-inotify', :require => false
  gem 'rb-fsevent', :require => false
  gem 'rb-fchange', :require => false
end

如果你有libnotify,这样做:

gem 'libnotify' if /linux/ =~ RUBY_PLATFORM
gem 'growl' if /darwin/ =~ RUBY_PLATFORM

工作对我来说,编码快乐!



文章来源: rake db:migrate error (Function 'inotify_init' not found)