Vagrant – アップデートに伴いextensions are not buildが発生

Vagrantを1.9.1から2.0.0へアップグレードしたところ、Vagrantコマンドの実行時に以下のメッセージが表示されるようになった。gemコマンドが案内されているが実行しても消えない。

$ vagrant --version
Ignoring ffi-1.9.14 because its extensions are not built.  Try: gem pristine ffi --version 1.9.14
Ignoring nokogiri-1.6.7.1 because its extensions are not built.  Try: gem pristine nokogiri --version 1.6.7.1
Ignoring unf_ext-0.0.7.2 because its extensions are not built.  Try: gem pristine unf_ext --version 0.0.7.2
Vagrant 2.0.0

環境

  • macOS Sierra
  • Vagrant 2.0.0 (1.9.1からの上書きアップグレード)

原因

どうやらVagrantを上書きインストールするとゴミが残るようであり、一旦アンインストールが必要らしい。

参考サイト: https://github.com/berkshelf/vagrant-berkshelf/issues/315

対策

まず公式のガイドに従い、Vagrant本体をアンインストールする。方法が更新されているかもしれないので公式ガイドを参照したほうがいいかも。

rm -rf /opt/vagrant
rm -f /usr/local/bin/vagrant
sudo pkgutil --forget com.vagrant.vagrant

Vagrantのユーザーデータ(~/.vagrant.d)の削除方法も案内されているが、自分の場合は削除しなくても解決した。

続いて最新版パッケージをダウンロードし、インストールしなおす。

https://www.vagrantup.com/downloads.html

確認

Vagrantコマンドを実行し、ワーニング等がなければ解決。

$ vagrant --version
Vagrant 2.0.0