【问题标题】:Rails Error Can't Find freedesktop.org.xmlRails 错误找不到 freedesktop.org.xml
【发布时间】:2021-06-22 11:45:45
【问题描述】:

我在启动一个新的 RAILS 项目时遇到了一些问题,我收到了一个错误,指出缺少文件 /usr/local/share/mime/packages/freedesktop.org.xml。与 mimemagic 依赖项有联系,我在 GitHub 上发现了这个关于 mimemagic 版本和许可的问题 - https://github.com/rails/rails/issues/41750

想知道是否有其他人遇到过这个问题,并且可以解释发生了什么。

我正在使用 rbenv 和 ruby​​ 版本:3.0.0p0(2020-12-25 修订版 95aff21468)[x86_64-darwin19] 和 rails 6.1.3

这是命令行中的错误信息:

Installing railties 6.1.3
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /Users/nico/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/gems/mimemagic-0.3.7/ext/mimemagic
/Users/nico/.rbenv/versions/3.0.0/bin/ruby -I/Users/nico/.rbenv/versions/3.0.0/lib/ruby/3.0.0 -rrubygems
/Users/nico/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/gems/rake-13.0.3/exe/rake
RUBYARCHDIR\=/Users/nico/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/extensions/x86_64-darwin-19/3.0.0/mimemagic-0.3.7
RUBYLIBDIR\=/Users/nico/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/extensions/x86_64-darwin-19/3.0.0/mimemagic-0.3.7
rake aborted!
Could not find MIME type database in the following locations: ["/usr/local/share/mime/packages/freedesktop.org.xml",
"/opt/homebrew/share/mime/packages/freedesktop.org.xml", "/usr/share/mime/packages/freedesktop.org.xml"]

Ensure you have either installed the shared-mime-types package for your distribution, or 
obtain a version of freedesktop.org.xml and set FREEDESKTOP_MIME_TYPES_PATH to the location of that file.

Tasks: TOP => default
(See full trace by running task with --trace)

rake failed, exit code 1

谢谢, 妮可

【问题讨论】:

    标签: ruby-on-rails ruby new-project


    【解决方案1】:

    在我发布的 GitHub 链接上找到了一些指向 shared-mime-info 的链接,我通过运行以下命令并开始一个新项目解决了这个问题:

    brew install shared-mime-info
    

    【讨论】:

    • 是的,我在尝试自行安装 rails 时遇到了同样的问题。 brew install shared-mime-info 安装了一堆依赖项,但它最终对我有用!
    • 在 Mac Silicon 处理器上为我工作
    【解决方案2】:

    如果你使用的是 ubuntu 操作系统,你可以在下面的命令中运行

    sudo apt-get install shared-mime-info

    【讨论】:

      【解决方案3】:

      如果将数据从 Intel Mac(或运行 Rosetta 2 的 M1 Mac)迁移到 M1,请注意 mimemagic 将缓存旧目录,因此除了brew install shared-mime-info,您还需要运行:

      gem uninstall mimemagic
      gem install mimemagic
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-04
        • 2015-10-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-19
        相关资源
        最近更新 更多