-2

Metasploit was working fine until this morning when I updated it with msfupdate, then all went to heck.

Typing msfconsole Now gives me this error:

Could not find nokogiri-1.6.8 in any of the sources
Run bundle install to install missing gems.

I went and typed bundle install. It was going fine until this happened:

Installing nokogiri 1.6.8 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/usr/bin/ruby2.2 -r ./siteconf20160831-24032-1wim46x.rb extconf.rb --use-system-libraries
Using pkg-config version 1.1.7
checking if the C compiler accepts ... yes
Building nokogiri using system libraries.
checking for libxml-2.0... no
checking for libxslt... no
checking for libexslt... no
ERROR: cannot discover where libxml2 is located on your system. please make sure pkg-config is installed.
* 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=/usr/bin/$(RUBY_BASE_NAME)2.2
    --help
    --clean
    --use-system-libraries
    --with-zlib-dir
    --without-zlib-dir
    --with-zlib-include
    --without-zlib-include=${zlib-dir}/include
    --with-zlib-lib
    --without-zlib-lib=${zlib-dir}/lib
    --with-xml2-dir
    --without-xml2-dir
    --with-xml2-include
    --without-xml2-include=${xml2-dir}/include
    --with-xml2-lib
    --without-xml2-lib=${xml2-dir}/lib
    --with-libxml-2.0-config
    --without-libxml-2.0-config
    --with-pkg-config
    --without-pkg-config
    --with-pkg-config
    --without-pkg-config
    --with-override-variables
    --without-override-variables
    --with-xslt-dir
    --without-xslt-dir
    --with-xslt-include
    --without-xslt-include=${xslt-dir}/include
    --with-xslt-lib
    --without-xslt-lib=${xslt-dir}/lib
    --with-libxslt-config
    --without-libxslt-config
    --with-pkg-config
    --without-pkg-config
    --with-exslt-dir
    --without-exslt-dir
    --with-exslt-include
    --without-exslt-include=${exslt-dir}/include
    --with-exslt-lib
    --without-exslt-lib=${exslt-dir}/lib
    --with-libexslt-config
    --without-libexslt-config
    --with-pkg-config
    --without-pkg-config

extconf failed, exit code 1

Gem files will remain installed in /usr/share/metasploit-framework/vendor/bundle/ruby/2.2.0/gems/nokogiri-1.6.8 for inspection.
Results logged to /usr/share/metasploit-framework/vendor/bundle/ruby/2.2.0/extensions/x86-linux/2.2.0/nokogiri-1.6.8/gem_make.out
Using rack-test 0.6.3
Using faraday 0.9.2
Using jsobfu 0.4.1
Using packetfu 1.1.11
Using rex-arch 0.1.1
Using rex-ole 0.1.2
Using rex-random_identifier 0.1.0
Using rex-zip 0.1.0
Using simplecov 0.12.0
Using activesupport 4.2.7.1
Using tzinfo-data 1.2016.6
An error occurred while installing nokogiri (1.6.8), and Bundler cannot
continue.
Make sure that gem install nokogiri -v '1.6.8' succeeds before bundling.

I started searching and came across this, which suggested that I should run bundle config build.nokogiri --use-system-libraries

But again, nothing. I also tried gem install nokogiri -v 1.6.8. I also tried even older versions: gem install nokogiri -v 1.6.0.

I'm using Kali.


EDIT: I think the solution is that I should reinstall Kali; One thing i learned from all this is to NEVER update MSF :D

Community
  • 1
  • 1
marc_s
  • 455
  • 1
  • 4
  • 15

3 Answers3

6

@RUser98 --

I found this answer on the Unix Stack Exchange site maybe it will help you?

If you get a error installing nokogiri-1.6.8 try to:

sudo apt-get install libxslt-dev libxml2-dev zlib1g-dev --yes 

Source: https://unix.stackexchange.com/a/298159

I've also had numerous issues with installing/updating Metasploit on Kali each time something new so I feel your pain

Community
  • 1
  • 1
BanjoFox
  • 250
  • 2
  • 12
  • Up voted because this caused `bundle install` to work just fine, But I'm still getting errors on running `msfconsole` – marc_s Sep 01 '16 at 00:53
  • It might still be helpful to others if you posted the error and solution ;) Either way nice work on fixing it! – BanjoFox Sep 02 '16 at 16:35
6

If you're having this problem On MacOS when trying to install Nokogiri, you can run xcode-select --install and try again :)

bpereira
  • 966
  • 2
  • 11
  • 29
0

First i tried these:-

sudo apt-get install make
sudo apt-get install ruby-dev
sudo gem install nokogiri -v '1.10.7' --source 'https://rubygems.org/'

Once the nogogiri gem was installed, I went into the metasploit-framework directory in my case was:-

cd /usr/share/metasploit-framework and typed:-

sudo bundle install

Everything went on nicely till i encountered a 'pg' gem installation error. This solves the error:-

sudo apt-get install libpq-dev
sudo gem install pg -v '0.21.0' --source 'https://rubygems.org/'
sudo bundle install

And yet again I encountered another gem installation error named 'pcaprub'

This Solves it:-

sudo apt install libpcap-dev
sudo gem install pcaprub -v '0.13.0' --source 'https://rubygems.org/'
sudo bundle install

Okay it's getting really frustrating now as yet again another error has occurred this time it was the 'sqlite3' gem which can be fixed by:-

sudo apt-get install sqlite3 libsqlite3-dev
sudo gem install sqlite3 -v '1.3.13' --source 'https://rubygems.org/'
sudo bundle install

Ah! finally Metasploit is Up and Running.

Bundle complete! 14 Gemfile dependencies, 144 gems now installed.
Cyber_Bear
  • 51
  • 2