Opened 3 years ago
Closed 3 years ago
#121 closed defect (fixed)
brew upgrade issues on macOS
Reported by: | Simon Murphy | Owned by: | Olly Betts |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | aven | Version: | 1.2.43 |
Keywords: | dyld Library libproj macOS | Cc: |
Description (last modified by )
Hi, I've recently migrated to BigSur? (the latest macOS), which meant survex no longer loaded.
I've just done a brew upgrade survex to get the latest version (I'm now at 1.2.43), hoping this would resolve the problems.
When I run
aven
I get (for user sjm):
dyld: Library not loaded: /Users/sjm/Developer/opt/proj/lib/libproj.19.dylib Referenced from: /Users/sjm/Developer/bin/aven Reason: image not found [1] 67839 abort aven
I did a bit of googling and tried to
brew unlink survex
then
brew link survex
again, but no luck.
When that didn't change anything, I tried
brew reinstall survex
but still no luck.
I tried
ln -s /Users/sjm/Developer/Cellar/proj/7.2.1.reinstall/lib/libproj.19.dylib /Users/sjm/Developer/opt/proj/lib/libproj.19.dylib
but still no success.
Thanks in advance for your help. Simon.
Change History (13)
comment:2 Changed 3 years ago by
Description: | modified (diff) |
---|
It doesn't seem like the proj problem is connected to the final failure, but I'm not sure what's causing either.
You could try updating again, as I see wxmac got updated to 3.1.5 2 days ago:
Maybe 3.1.5 supports the latest macos better.
If that doesn't help, I don't have a mac myself so it's hard for me to investigate, but we can see if Robert Jones can take a look (he put together the homebrew packaging).
comment:3 Changed 3 years ago by
Thanks for the suggestion. I've updated wxmac and I've done
brew reinstall survex
Now I get a new error:
aven
dyld: Library not loaded: /Users/sjm/Developer/opt/wxmac/lib/libwx_osx_cocoau_core-3.0.dylib
Referenced from: /Users/sjm/Developer/bin/aven Reason: image not found
[1] 26016 abort aven
Would appreciate input from Robert Jones!
comment:4 Changed 3 years ago by
Could you try again now?
I've updated the homebrew repo to Survex 1.4.1 (which builds with recent proj) and the CI tests show it installs on macos 10.15 and 11.0:
https://github.com/ojwb/homebrew-survex/actions/runs/1781622178
comment:6 Changed 3 years ago by
Hi Olly. Yes, it seems I accidentally replied by email rather than replying to this thread. Here's the email I sent:
Thanks for following up with this. I've tried just about everything I could think of.
I repeated the
brew unlink survex
and
brew link survex
steps. I also tried a reinstallation with
brew reinstall survex
I attempted to upgrade wxmac, which is apparently deprecated and so gets replaced with wxwidgets. I additionally tried to compile from source instead with
brew install -s wxmac
to which brew suggested to reinstall wxwidgets instead, with
brew reinstall wxwidgets
so I did that, too.
I also reinstalled xcode tools with
xcode-select --install
Then repeated all of the above commands.
Still, no matter what I try I encounter the same error:
dyld: Library not loaded: /Users/sjm/Developer/opt/wxmac/lib/libwx_osx_cocoau_core-3.0.dylib Referenced from: /Users/sjm/Developer/bin/aven Reason: image not found [1] 57985 abort aven
Simon.
comment:7 Changed 3 years ago by
I've now made a new Survex release and updated the homebrew package to use this. The package now also uses wxwidgets
instead of wxmac
so it the problem finding some wxmac library should have gone.
Can you retry with that?
comment:8 Changed 3 years ago by
I'm still seeing lots of warnings about wxmac library, but I'm not sure what caused the eventual failure of the install. (I uninstalled and then did a brew install survex
):
https://gist.github.com/SimonJMurphy/7c0c772e5d7f3e5abf1104cdcc3a2901
comment:9 Changed 3 years ago by
==> Downloading https://survex.com/software/1.2.43/survex-1.2.43.tar.gz
That's not using the updated package - the updated package is 1.4.2.
I think you need to use the steps given on https://survex.com/download.html?platform=macos for upgrading:
Once you've installed as above, you can upgrade your homebrew packages (including Survex) like so:
brew update brew upgrade
comment:10 Changed 3 years ago by
Hi Olly,
I don't understand why, but brew tap survex/survex https://git.survex.com/homebrew-survex
followed by brew install survex
still results in an attempt to install 1.2.43 rather than 1.4.2.
comment:11 Changed 3 years ago by
I think that's because the first command sees that the tap is already set up so doesn't actually do anything, and then the second command fetches and installs the latest version of the requested package that it knows about based on a locally stored copy of the list of packages.
You need to run brew update
to update that list of packages to the current version, then brew upgrade
will upgrade all packages that are currently installed and not the latest version (according to that local list).
comment:12 Changed 3 years ago by
Ah, success! Indeed I hadn't run brew update
and brew upgrade
since 1.4.2 was launched.
So I now succeeded with an installation, but when I try aven
on the command line the process never successfully launches. The menu bar loads but then the process becomes non-responsive. I also tried launching from the full path /Users/sjm/Developer/bin/aven
with the same results (as you'd expect).
Sorry that this is proving so problematic... :(
comment:13 Changed 3 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
That's a known problem, being tracked in #120.
It only seems to affect launching aven "empty", so the workaround is to instead launch aven by loading a file.
The problem tracked here is solved, so closing.
After the link to the new library path, the error reported is the following:
2021-06-15 14:56:01.737 aven[79132:6683451] * Assertion failure in NSSize _NSViewClampSizeToLimits(NSView *, NSString *, NSSize)(), NSView.m:709 2021-06-15 14:56:01.745 aven[79132:6683451] <NSATSTypesetter: 0x7f8f6d01e580>: Exception Invalid parameter not satisfying: fabs(size.width) <= NSVIEW_GEOMETRY_LIMIT raised during typesetting layout manager <NSLayoutManager: 0x7f8f6d749fb0>
, glyph range {0 0}. Ignoring... [1] 79132 segmentation fault aven