Brew Binary Install on macOS BetaLast update: 2 years ago Tag : brew, erlang, elixir, phoenix, boringssl, macos beta
If you like me, i.e fond of using the most bleeding edge version of everything, including OS in an everyday production machine, and in this case is macOS, you must be familiar with
brew, unless you're a different kind of macOS user.
So, you may already knew that
brew is not supported on any beta version of macOS, so if you want to install a package, it will fetch the source, and try to build it, and then install it. If you're lucky enough, your package will be ready in a couple of minutes, if not hours. Building something from source usually takes much more times than just five minutes.
Now you wonder, why
brew just doesn't use the latest version of binary of the package, instead of fetching the source?
Well, latest binary version of a package was built for the previous macOS version, much probably it won't work in your newest beta version, that's why the package is needed to be built using the current version of development tools.
Now, we have some specific problems regarding this compilation routines, that is
brew failed to install our package because of some errors in the building process (after took exactly forty-two minutes of compilation in my case). Of course, Google and Stack Overflow are the next logical things to look at, but alas! The very same problem, and unresolved yet.
That's just how it's work! Beta version is only for the brave, and most importantly, don't use it in your code-for-food machine!(!!)
So, now, just like you, I face similar problem regarding phoenix framework in my macOS High Sierra (10.13 beta 8). The problem is Apple try to replace OpenSSL with BoringSSL for internal use, while encouraging LibreSSL for external use .
TL;DR; I finally succeeded reinstall erlang package by choosing the latest bottle (binary package) for the Sierra, using this simple command:
brew reinstall erlang --force-bottle
Actually all this drama can be avoided by just read an internal help of
brew itself, i.e by running
brew help install, we'll see a lot of options regarding installing a package. So now, instead of building from source as the main workflow, I will just try binary first and build later, pretty much like in the