Often when upgrading to the latest OS X MacOS you have to do a few things to account for changing to underlying libraries. Here are the post-upgrade steps I took to get back to a fully operational state. I use homebrew and rbenv to manage my environment.
To do this just run
$ xcode-select --installand confirm the system pop up.
$ brew up$ brew upgrade [package1, package2, ...]I almost always need to do this for major OS upgrades. This time it was readline that changed, and threw this message:
Sorry, you can't use byebug without Readline. To solve this, you need to
rebuild Ruby with Readline support. If using Ubuntu, try `sudo apt-get
install libreadline-dev` and then reinstall your Ruby.
This is simple with rbenv and ruby-build:
$ rbenv install 2.3.1 --forceWith ruby reinstalled, ruby itself is working, but many of the gems with native extensions need to be recompiled. You get messages like this when trying bundle install:
Ignoring scout_apm-3.0.0.pre3 because its extensions are not built. Try: gem pristine scout_apm --version 3.0.0.pre3
I had enough of these that I decided to just make all my gems pristine:
$ gem pristine --allThis takes a long time. You can of course just do gem pristine gem1 gem2 gem3... if you know the list.
Thank you!