garrison

garrison

Just ran into some trouble updating elixir with brew so I thought I’d provide a quick writeup since I didn’t see anything else while searching.

I was upgrading elixir with brew upgrade and received an error claiming that wxwidgets@3.2 could not be linked, which interrupted the upgrade. A brew doctor check indeed showed it was unlinked.

Some brief spelunking showed that the erlang package was switched from wxwidgets to wxwidgets@3.2 for whatever reason.

Unfortunately it appears that these packages conflict during linking, and brew is not smart enough to uninstall wxwidgets (which was at the time actually at 3.2) before installing wxwidgets@3.2.

I first tried upgrading wxwidgets, which inadvertently upgraded erlang and elixir (brew moment), and surprisingly that upgrade completed successfully, but wxwidgets@3.2 still wasn’t linked. This seemed like a bad state to be in (presumably they pinned the version for a reason).

I tried brew link wxwidgets@3.2 thinking maybe it wouldn’t conflict now that wxwidgets was at 3.3, but apparently the paths still conflicted. I then tried uninstalling wxwidgets, but brew claimed that it was still required by elixir (but not erlang?!), which was a lie (elixir only depends on erlang). I then tried forcibly uninstalling wxwidgets, which succeeded.

I was going to then attempt brew link again, but at this point I realized I was wasting my time and just uninstalled elixir (which cleared out the deps) and reinstalled it from scratch, and the dependency resolution proceeded correctly that time (wxwidgets was not installed).

TL;DR brew uninstall elixir && brew install elixir

Showing Posts 1 to 2

adamu

adamu

For me using brew and kerl I was getting this error when attempting to start observer:

[error] WX ERROR: Could not load library: :load_failed
Failed to load NIF library: …/lib/wx-2.5.1/priv/wxe_driver.so

The erlang docs currently state that 3.3 is experimental, so to install 3.2 with brew I had to:

brew uninstall wxwidgets
brew install wxwidgets@3.2
whereis wx-config-3.2 and add this to KERL_CONFIGURE_OPTIONS: --with-wx-config=/opt/homebrew/bin/wx-config-3.2

Then rebuild erlang.

garrison

garrison OP

Ah, well I guess that’s why they pinned it!

— All posts loaded —

Where Next? Top

Trending in Guides/Tuts Top

c4lliope
# ~/src/livebook/.iex.exs System.cmd("xdg-open", [ LivebookWeb.Endpoint.access_url() ] ) Because Livebook requires a unique passcode on ...
New
krasenyp
You probably already know that <span>{nil}</span> in a HEEX template produces <span> </span> when rendered. I fin...
New

Other Trending Topics Top

mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews