相关疑难解决方法(0)

警告:Nokogiri是针对LibXML版本2.8.0构建的,但动态加载了2.7.8

我在OSX ML上的Ruby 2.0.0和Rails 4配置上遇到此问题.我的Arch Linux工作站上没有这个问题.

之所以出现这种警告是很讨厌,就在于它打破我的Vim的插件(SweetVimRspec),并因此杀死了我的Vim的开发工作流程,因为我无法测试.

我在这里尝试了每个upvoted解决方案: Mac用户并获得警告:Nokogiri是针对LibXML版本2.7.8构建的,但已动态加载2.7.3

我无法摆脱它(实际上我已经摆脱它nokogiri本身,但rspec and rails console根本没有).

ruby macos ruby-on-rails nokogiri ruby-on-rails-4

8
推荐指数
1
解决办法
7450
查看次数

在Xcode 4.4和OSX 10.8安装之后 - 安装libv8时'无法构建gem native extension'

我最近将OSX升级到Mountain Lion(10.8)和Xcode(4.4),并在试图让我的rails环境正常工作时遇到问题.我开始运行bundle install并在安装libv8库时遇到错误.下面是完整错误的粘贴.我一直在搜索并寻找类似的问题,但到目前为止我在stackoverflow上找到的并没有应用于我的问题.以下是我迄今为止尝试过的几件事但无济于事:

  • 安装Xcode命令行工具
  • 安装MySQL
  • 安装X11
  • 通过gemfile安装不同版本的libv8

现在我的问题似乎超出了我的红宝石技能.如果有人对我可以尝试或遇到类似问题有一些想法,我会很乐意帮助您.谢谢!

这是我的gemfile的样子:

source 'https://rubygems.org'

gem 'rails', '3.2.6'
gem 'bundler'
gem 'rake'
gem 'sqlite3'
gem 'haml'
gem 'nokogiri'
gem 'whenever'
gem 'mysql'
gem 'mysql2'
gem 'jquery-rails'
gem 'capistrano'

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3' …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

7
推荐指数
1
解决办法
8106
查看次数

如何在自定义Rails引擎gem中加载正确版本的动态库和gems(libxml,Nokogiri)?

我正在构建一个使用Nokogiri gem的rails引擎,我在MacOS 10.7和10.8中遇到了我的开发设置问题:

为了让Nokogiri在我的设置中正常工作,我更新了libxml和libxslt库:

brew update
brew install libxslt
brew upgrade libxml2
gem uninstall nokogiri
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.9.0/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.9.0/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.28
Run Code Online (Sandbox Code Playgroud)

如果我在"常规"rails应用程序中使用它,Nokogiri可以正常工作(将它包含在Gemfile中,运行bundle install).

当我尝试从我正在构建的Rails引擎中使用Nokogiri并使用我的应用程序作为宝石时出现问题.

在gemspec中:

s.add_dependency 'nokogiri' # XML parsing
Run Code Online (Sandbox Code Playgroud)

我还在Gem的Gemfile顶部尝试了以下内容:

gem 'nokogiri'
Run Code Online (Sandbox Code Playgroud)

当我启动一个使用我的Rails Engine gem的应用程序时,我收到以下警告:

WARNING: Nokogiri was built against LibXML version 2.9.0, but has dynamically loaded 2.7.8
Run Code Online (Sandbox Code Playgroud)

如何配置gem和/或bundler和/或Rails以使用正确版本的Nokogiri和libxml以及libxslt?

另外,这是输出 nokogiri -v

# Nokogiri (1.5.9)
    ---
    warnings: []
    nokogiri: 1.5.9
    ruby:
      version: 1.9.3
      platform: x86_64-darwin12.3.0
      description: ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-darwin12.3.0]
      engine: ruby
    libxml:
      binding: extension
      compiled: …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails libxml2 nokogiri rails-engines

2
推荐指数
1
解决办法
1017
查看次数

解释此错误:警告:Nokogiri是针对LibXML版本2.7.3构建的,但动态加载了2.9.0

我刚刚安装了Spree电子商务CMS而没有太多头疼.我完全不知道这个消息意味着什么.有人可以慢慢向我解释一下吗?

Nokogiri似乎是某种渲染器?请向我解释一下,我认为rails服务器处理了所有资产的获取和渲染?

LibXML是一个XML C解析器.有人可以解释一下XML C解析器是什么吗?

"反对"意味着什么?

我很熟悉ruby,但我是部署新手.这个管理方面的事情是完全陌生的!谢谢你的协助!

ruby ruby-on-rails libxml2 nokogiri spree

0
推荐指数
1
解决办法
507
查看次数