我一直在处理Rails安装说明(http://railsapps.github.io/installrubyonrails-mac.html),一切都没问题,直到我到 New Rails Application 下gem install rails
部分。当我运行时,我得到了libxml2。这是日志:http://codecascade.com/sIjhQ/raw
我有类似的问题安装nokogiri,我能够解决它的唯一方法是
gem install nokogiri -- --use-system-libraries
我在OS X 10.10.2上。我也安装了RubyMine,如果它可能相关的话。
答案 0 :(得分:7)
我遇到了同样的问题,并且能够按如下方式解决:
仅在使用系统库时单独安装Nokogiri:
gem install nokogiri -- --use-system-libraries
...但在执行bundle install
时仍然失败。因此,只需配置bundler以使用系统库构建Nokogiri:
bundle config build.nokogiri --use-system-libraries
答案 1 :(得分:6)
您没有所需的库,谷歌解决方案很容易:
brew install libxml2
答案 2 :(得分:4)
尝试使用:
sudo gem install rails -- --use-system-libraries --with-xml=/usr/local/Cellar/libxml2/
答案 3 :(得分:1)
我有同样的问题,在Debian上似乎只是缺少'dev'库的问题,可能需要在安装期间编译源代码(我猜)。我通过安装(通过apt-get或aptitude)以下包解决了这个问题:
答案 4 :(得分:1)
这对我有用(based on this Github thread):
gem install nokogiri -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/
作为一个说明,我的问题是:
...
checking for main() in -llzma... yes
checking for xmlParseDoc() in libxml/parser.h... no
checking for xmlParseDoc() in -lxml2... no
checking for xmlParseDoc() in -llibxml2... no
-----
libxml2 is missing. Please locate mkmf.log to investigate how it is failing.
-----
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/Users/seanshadmand/.rvm/rubies/ruby-2.1.1/bin/ruby
--help
--clean
--use-system-libraries
--enable-static
--disable-static
--with-zlib-dir
--without-zlib-dir
--with-zlib-include
--without-zlib-include=${zlib-dir}/include
--with-zlib-lib
--without-zlib-lib=${zlib-dir}/lib
--enable-cross-build
--disable-cross-build
--with-xml2lib
--without-xml2lib
--with-libxml2lib
--without-libxml2lib
To see why this extension failed to ...
extconf failed, exit code 1
答案 5 :(得分:0)
由于某种原因,libxml2的nokogiri构建过程将错误地放置构建版本。
而不是lib/
它将会lib64/
。 Nokogiri将在错误的目录中查找它。
答案 6 :(得分:0)
Simar提到它对我有用。
sudo gem install rails -- --use-system-libraries --with-xml=/usr/local/Cellar/libxml2/
如果您遇到麻烦,请在Mac上安装。 https://gorails.com/setup/osx/10.11-el-capitan
此外,如果您找不到/ usr / local / Cellar / libxml2 / existing,您可能需要自制它。
brew install libxml2
如果你像我一样在新安装的OS X EL CAPITAN上安装它,你可能会发现自制软件已经安装了libxml2并且brew不会用它新安装的libxml2替换现有的libxml2在/ usr / local / Cellar / libxml2 /,这是我们真正应该链接库的那个。由于系统默认的libxml2无法成功链接。
答案 7 :(得分:0)
我尝试时遇到同样的问题:
gem install libxml-ruby -v '3.0.0
运行以下内容为我解决了Mac上的问题:
gem update --system
xcode-select --install
gem install nokogiri
有关详细信息,请参阅installing nokogiri