需要taglib-ruby时加载错误

时间:2016-01-27 09:51:09

标签: ruby osx-mavericks require taglib taglib-ruby

我正在尝试使用Taglib的Ruby包装器gem在练习程序中使用ID3标签。关于taglib ruby​​ gem的要求,我遇到了加载错误。

我已经通过RubyGems将gem安装到我的项目中,并且只需要在许多帖子中说明gem:

require 'taglib'

这些是我正在使用的软件版本:

  • ruby​​ 2.0.0p481
  • taglib-ruby(0.7.1)
  • taglib-1.9.1

我在Mac上使用Mavericks 10.9.5,使用RubyMine作为我的IDE。 我不确定我的安装是否适用于taglib(原始版本,而不是Ruby包装器)。我使用Homebrew下载.tar.gz文件,然后将其解压缩。 Taglib 1.10文件夹位于我的本地下载文件夹中 - 是否应放在其他位置?

如上所述,我在.rb文件的顶部需要'taglib'。我在尝试运行此文件时遇到的错误是:

'require': cannot load such file -- taglib (LoadError)

我对Ruby和SO都很陌生,所以我需要澄清一下,请问。感谢任何帮助,非常感谢。

2 个答案:

答案 0 :(得分:1)

当您需要文件时,该文件必须位于Ruby的$LOAD_PATH变量中,或者在require字符串中明确指出。

您发布的错误特定于此。 require命令省略了扩展,因为如果它们可用,它将加载除Ruby之外的其他类型的文件。有关详细信息,请参阅require方法的文档。

如果您已在~/my_projects/music_analyzer/taglib_unzip_folder中安装了库,则可以使用require '~/my_projects/music_analyzer/taglib_unsip_folder/taglib,并且错误消息应该更改。

如果您已安装gem并使用rvm,则不应使用sudo,但应使用gem install taglib-ruby

在这种情况下,您不需要指定文件夹名称,因为路径将包含在Ruby的加载路径中。

如果您使用的是IDE,并且该IDE未使用相同的环境,则最终会出现负载问题,因为您的安装和IDE的环境可能不同。

您可以使用irb。

在终端上测试这些内容,而不是使用IDE
>> require 'taglib'
=> true

答案 1 :(得分:0)

在Mac终端上尝试输入gem list。这应该给你安装的gem列表。如果gem未显示,请键入gem install "gem-name"进行安装。